javascript - 自定义指令在 AngularJS 错误 : $injector:modulerr 中不起作用

标签 javascript jquery html css angularjs

我正在使用 jQuery 和 html,然后我发现我必须为每个页面编写导航条码。所以我决定在文件中添加一个自定义指令。 我很久以前就使用过 angularJS,但我只是基础知识。一些帮助真的很感激。 谢谢。

html文件:

<html ng-app="navModule">
<head>
    <link rel="stylesheet" type="text/css" href="css/front.css">
    <script src="js/angular.min.js"></script>
    <script src="js/customDirective.js"></script>
</head>

<body>
<!--    Custom Directive-->
    <div>
        <nav-bar> 
        </nav-bar >
      </div>
<!--  Custom Directive       -->
</body>
</html>

AngularJS 代码:

(function(){

navModule = angular.module("navModule", []);


navModule.directive("navBar", function() {
 return {
    restrict: 'E',
    templateUrl: "custom/navBar.html"
 };
});


})();

和navBar.html代码:

<h2> This is navigation bar </h2>
<h5> this is navigation bar </h5>

错误是:

XMLHttpRequest cannot load file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/navBar.html. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.(anonymous function) @ angular.min.js:87
angular.min.js:102 Error: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/navBar.html'.
at Error (native)
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:87:37
at n (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:82:442)
at f (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:80:174)
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:112:113
at n.$eval (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:126:15)
at n.$digest (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:123:106)
at n.$apply (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:126:293)
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:17:479
at Object.e [as invoke] (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:36:315)(anonymous function) @ angular.min.js:102

 angular.min.js:102 Error: [$compile:tpload] http://errors.angularjs.org/1.3.15/$compile/tpload?p0=navBar.html
at Error (native)
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:6:417
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:137:25
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:112:113
at n.$eval (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:126:15)
at n.$digest (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:123:106)
at n.$apply (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:126:293)
at file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:17:479
at Object.e [as invoke] (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:36:315)
at d (file:///C:/Users/Ibtehaz/OneDrive/3%20people/HandyUncle/js/angular.min.js:17:400)(anonymous function) @ angular.min.js:102

我知道这是一个简单的错误,我遗漏了一些东西。 提前致谢。

最佳答案

似乎您使用了错误的语法,请尝试以下操作:

<nav-bar></nav-bar>

下一个问题的发生是因为您正在尝试在不运行本地 Web 服务器的情况下加载模板。这个问题在这里得到了很好的描述:

XMLHttpRequest Origin null is not allowed Access-Control-Allow-Origin for file:/// to file:/// (Serverless)

关于javascript - 自定义指令在 AngularJS 错误 : $injector:modulerr 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29876454/

相关文章:

javascript - 自定义 Google Map v3 控件位置问题

jquery - jquery "on click"函数在按键 "enter"时被触发

javascript - 无法在 AngularJS phonecat 应用程序中执行 Web 服务器

javascript - CSS 或 JS 来隐藏输入但保持文本显示?

jquery - 获取元素的位置

javascript - Jquery 计数器和 fadein 问题

html - Flexbox 中的 SVG 对象

javascript - 如何从页面底部的 <a 链接滚动到 #header DIV 以及如何更改动画速度 - JQuery 1.8.3

javascript - 检查字符串是否以给定的目标字符串结尾 | javascript

javascript - 如何从 aspx.cs 调用 javascript 方法