Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJs ReferenceError:未定义角度_Javascript_Angularjs_Singlepage - Fatal编程技术网

Javascript AngularJs ReferenceError:未定义角度

Javascript AngularJs ReferenceError:未定义角度,javascript,angularjs,singlepage,Javascript,Angularjs,Singlepage,我正在尝试添加自定义筛选器,但如果使用以下代码: angular.module('myApp',[]).filter('startFrom', function() { return function(input, start) { start = +start; //parse to int return input.slice(start); } }); 但如果我这样做,我会在firebug中得到:“ReferenceError:angula

我正在尝试添加自定义筛选器,但如果使用以下代码:

angular.module('myApp',[]).filter('startFrom', function() {
    return function(input, start) {
        start = +start; //parse to int
        return input.slice(start);
    }
});
但如果我这样做,我会在firebug中得到:“ReferenceError:angular未定义”


应用程序的其余部分工作正常,我在标记div中使用ng应用程序,而不是在标记html中,并且

正如注释中提到的@bmleite,您可能忘记加载angular.js


如果我在其中创建了一个包含angular指令的fiddle,但没有包含angular.js,我在Chrome控制台中会得到完全相同的错误:
未捕获引用错误:angular未定义

在包含任何其他js文件之前,您应该先放置include angular行,就像这是一个单页应用程序一样,使用的解决方案是:

像任何其他控制器一样,使用AJAX加载内容,然后调用:

angular.bootstrap($('#your_div_loaded_in_ajax'),["myApp","other_module"]);

如果您碰巧使用了rails和angular rails gem,那么通过将这一缺失的行添加到application.js(或任何适用于您的情况的行)中,问题很容易得到纠正:


我遇到这个问题是因为我在Mac上复制并粘贴了ngBoilerplate到我的项目中,而Finder没有显示隐藏的文件。所以,《鲍尔》并没有被复制成其他的样板。因此,bower将资源转移到bower_组件(defult)而不是供应商(按配置),我的应用程序也没有角度。可能是一种极端情况,但可能对这里的某些人有所帮助。

我认为如果在使用angularjs时对(包含筛选器的文件)使用“async defer”,就会出现这种情况:

<script src="js/filter.js" type="text/javascript" async defer></script>


如果您这样做,只需删除“异步延迟”。

由于本地和远程引用,我面临类似的问题

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.js"></script>
<script src="lib/js/ui-grid/3.0.7/ui-grid.js"></script>

由于ui-grid.js依赖于angular.js,ui-grid在加载时需要angular.js。但在上述情况下,ui-grid.js[本地保存的参考文件]是在angularjs[从互联网]加载之前加载的

如果同时引用angular.js和ui网格,问题就解决了 本地以及在ui网格之前声明angular.js


如果你从谷歌下载了angular.js文件,你需要确保每个人都有读取权限,否则它不会被你的HTML文件加载。默认情况下,它似乎是在没有访问权限的情况下下载的,因此您还将收到以下消息:

得到


这让我生气了大约半个小时

始终确保在HTML文件中首先引用js文件(angular.min.js)。例如:

-----------------此引用将抛出错误------------------

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