如何在本地存储和静态地为angularjs库提供服务?

时间:2016-02-12 01:39:23

标签: javascript angularjs static-libraries libraries

我将在没有互联网访问的角度项目上工作,所以我的cdn链接将无法运行。我想将angularjs库保存到项目内的文件夹中。这是我尝试过的:

我去了cdn链接,复制了所有文本,将其粘贴到一个文件中,并将该文件保存为angular.min.js。然后我在我的index.html文件中注释掉cdn的脚本标记,并输入一个新的脚本标记,指定新保存文件的路径。当我打开我的项目时,我收到错误“Uncaught ReferenceError:angular is not defined。”

以下是我项目的文件/文件夹结构的相关部分:

project
|_core
| |_public
|   |_app
|     |_index.html
|_libraries
  |_angular.min.js

这是我的脚本标签:

<script src="./../../../libraries/angular.min.js"></script>

这是我复制文本的cdn的链接:

https://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.min.js

4 个答案:

答案 0 :(得分:2)

您使用的是任何类型的本地网络服务器吗? Angular和许多脚本需要从http而不是file://加载。为此,您可以使用python的SimpleHTTPServer:python -m SimpleHTTPServer 8080 - 将在http://localhost:8080上打开一个http服务器,打开浏览器中的URL,你应该好好去。另请注意,在HTML中加载脚本的顺序很重要,需要在使用它的所有代码模块之前加载Angular。

答案 1 :(得分:1)

您可以使用Grunt任务来缩小和连接所有文件。您可以阅读GruntJS的文档。非常有用。

http://gruntjs.com/sample-gruntfile

请参阅连接部分。

如果您手动执行此操作,则检查lib文件的顺序。 Angularjs lib需要排在首位。 有可能出错。

是的只是包含一个你不需要Grunt的文件 如果您的文件angular.min.js正确加载,请在网络选项卡中检查chrome inspect developer工具。如果没有,你可以改变路径并尝试但是如果它正在加载但仍然会得到相同的错误,所以请创建文件的jsfiddle或plunker,以便我们可以详细查看。

答案 2 :(得分:1)

&#13;
&#13;
function largest(arr){
        var sortArr = arr.sort(function(a,b){return b.length - a.length});
        return sortArr;
    }

    function returnRepeatChar(str){
       return largest(str.toLowerCase().split(" "));
    }
    //This function return the sorted of the given string
    var sorted = returnRepeatChar("There\'s a passage that I got memorized, seems appropriate for this situation: Ezekiel 25,17.");
alert(sorted);
&#13;
&#13;
&#13;

这个怎么样?

答案 3 :(得分:1)

你刚试过这个吗?

<script src="/libraries/angular.min.js"></script>

也许您的服务器从项目的根目录启动网站(localhost:80)