为什么Angular项目无法像其他任何JavaScript项目一样在浏览器上运行

时间:2019-08-02 04:12:17

标签: javascript angular

我试图在浏览器的#!/bin/bash echo "Checking for CUDA and installing." # Check for CUDA and try to install. if ! dpkg-query -W cuda-9-0; then # The 16.04 installer works with 16.10. curl -O http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_9.0.176-1_amd64.deb dpkg -i ./cuda-repo-ubuntu1604_9.0.176-1_amd64.deb apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub apt-get update apt-get install cuda-9-0 -y fi # Enable persistence mode nvidia-smi -pm 1 文件夹中运行index.html,但是它不起作用,这与angularjs应用程序不同,我们将脚本文件导入index.html,并且该应用程序可以正常工作。

为什么我们无法在Angular Project中做到这一点,因为在dist中导入的某些javascript文件与其他任何javascript项目一样。

3 个答案:

答案 0 :(得分:3)

您也可以在Angular应用程序中执行此操作。您需要为此安装http-server。

请遵循以下步骤-

  1. 使用以下命令从npm服务器安装http服务器-

    npm install http-server -g

  2. 使用命令生成dist文件夹中的构建-

    ng build --prod --aot --output-hashing=none

  3. 运行命令以从dist文件夹运行项目-

    run http-server ./dist

这将从dist文件夹开始为您的项目提供服务。

答案 1 :(得分:0)

因为Angular应用程序可以在您可能尚未安装的服务器上运行。 希望本文对https://angular.io/guide/setup-local

有帮助

答案 2 :(得分:0)

将index.html直接加载到浏览器中时,它不使用http协议。由于安全原因,正在file:///上通过本地文件系统加载该文件。由于安全原因,浏览器不允许直接从文件系统访问.js文件。

文件系统未提供所需的服务器功能。 Github comment以及更多详细信息。

enter image description here

至少需要一个简单的静态HTML服务器来运行Angular应用程序。

  

Angular应用程序非常适合与简单的静态HTML服务器一起使用。您不需要服务器端引擎来动态编写应用程序页面,因为Angular在客户端进行此操作。 Read More