- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我将脚本动态加载到页面时遇到问题。目前,我们有两个独立的项目,一个 SharePoint 应用程序和一个“CDN”网站,我们在其中托管所有内容文件(js、css、图像等)。
由于这些项目被分成多个项目,我们必须在加载脚本的方式上发挥创意(确保如果我们浏览 Sharepoint 项目的开发环境,它会从 CDN 的开发环境加载内容)
这是我们用来动态加载脚本标签的脚本:
<script type="text/javascript">
var ReferenceLoader = (function () {
var cdnUrl = {
'devSPDomain': 'https://devCDN/',
'testSPDomain': 'https://testCDN/',
'prodSPDomain': 'https://prodCDN/'
},
baseUrl = cdnUrl[window.location.host] || 'https://prodCDN/';
this.InsertReference = function (sources, type) {
sources = [].concat(sources); // make sure it's an array
type = type || 'script'; // default to script
switch (type.toLowerCase()) {
case 'script': InsertScriptReference(sources); break;
case 'style': InsertStyleReference(sources); break;
default: console.log('Invalid type supplied to \'InsertReference()\'');
}
};
function InsertScriptReference(sources) {
for (var i = 0; i < sources.length; i++) {
var s = document.createElement('script'),
src = baseUrl + sources[i];
s.setAttribute('type', 'text/javascript');
s.setAttribute('src', src);
document.head.appendChild(s);
}
}
function InsertStyleReference(sources) {
for (var i = 0; i < sources.length; i++) {
var s = document.createElement('style'),
src = baseUrl + sources[i];
s.setAttribute('rel', 'stylesheet');
s.setAttribute('href', src);
document.head.appendChild(s);
}
}
return this;
})();
</script>
然后在任何给定页面上我们像这样使用它:
<script type="text/javascript">
var scripts = [
'dist/js/plugins/chart/0.0.1/chart.min.js',
'dist/js/shared/services/util/0.0.1/utilServices.min.js',
'dist/js/components/home/0.0.4/home.min.js'
];
ReferenceLoader.InsertReference(scripts);
</script>
现在一切都很好,我可以在页面上看到它成功地将脚本/链接标签放入 head 元素中,但是我得到了 angular injector error 。我 110% 肯定正在加载包含模块的文件,如果我只是做一个普通的脚本标记,直接指向我的页面上的它(在头部或正文中),它就可以正常工作。有什么想法吗?
这是一个plunker显示问题
最佳答案
我最终通过做两件事解决了这个问题:
关于javascript - 加载脚本 "dynamically"时出现 Angular $injector 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34164946/
$injector.instantiate有什么区别, $injector.get和 $injector.invoke在 AngularJS 中? 最佳答案 鉴于以下服务: app.service('
我尝试使用两种方式显式创建依赖关系。两者几乎相同,但我有点困惑使用反射注入(inject)器比普通注入(inject)器有什么优势,推荐使用哪种方式? 使用注入(inject)器 import { I
我对 Angular js 很陌生,以下是我的代码 (function(angular){ var testAngular = angular.mo
在英雄之旅教程的第 5 节中,main.dart 包含以下行: final InjectorFactory injector = self.injector$Injector; 这是错字吗?它在 VS
你好我是 Angular JS 的初学者,当我开始创建模块和 Controller 时,我无法打印我的消息,下面是我的代码 var myModule = angular.module("myFirst
我只是想在 Angular Dart 中尝试路由。我在关注这个https://webdev.dartlang.org/angular/guide/router/1指导,但我收到错误。 这一行给出错误
自从我设置一个与 Angular 一起运行的网络应用程序以来已经有一段时间了。我正在通过一个旧项目回顾我的步骤(尝试在我正在做的页面上实现一个 Controller ,确保 Controller 文件
我正在尝试学习 Angular,但无法正确加载它。我看了一下关于 SO 的类似问题,但找不到我要找的东西。 有人知道为什么会出现这个错误吗?在我看来,我是否正确地调用了我的新应用程序/模块?我的剧本错
我使用环回作为后端,使用 postgresql 作为数据库。所以我尝试使用 lb-service/js。 如果我尝试在 login.js 中包含 lbServices (angular.module(
我正在尝试将表情符号应用程序注入(inject)我的项目。 我添加了emoji.min.js并像这样引用它 现在我也将它注入(inject)到我的项目中,如下所示: angular.module('
当我尝试将 $cookie 包含到我的 Controller 中时出现此错误。 任何人都可以向我解释我做错了什么? 我在 index.html 中有 angular-cookie.js 我在 conf
我正在使用 anguarjs 开发一个应用程序,并出现如下错误: 无法实例化模块 myApp,原因是:错误:[$injector:modulerr] http://errors.angularjs.o
var demoapp = angular.module('demoapp', []); demoapp.controller('SimpleC
我正在尝试通过网络摄像头简单地读取二维码,但我在控制台打开 Angular 帮助页面时遇到此错误,但说使用 ngRoute Error: [$injector:modulerr] http://err
我正在尝试对此进行编码,只是使用路由从第一个页面跳转到另一个页面,但为什么它不起作用,我搜索并使用了很多技巧但仍然失败,请问有人吗? index.html Angular Js
我收到此错误: ncaught Error: [$injector:modulerr] Failed to instantiate module myApp due to: Error: [$inje
我正在尝试创建一个带有 Angular 路由的 SPA(单页应用程序),但是当我将 ndRoute 添加到我的模块时,它给了我这个错误 Uncaught Error: [$injector:modul
this is the error i m getting.这个问题被问了很多次。但是下面的代码在在线编译器中运行良好,但在我的本地系统中运行不佳,即使系统已连接到互联网,它也显示未定义 Angula
我正在尝试学习 Angular 并尝试在基于 Web 的教程之外编写我的第一个 Controller 。我一直在 JS 控制台的标题中收到错误消息,无法弄清楚发生了什么。该链接将我带到一个引用需要包含
我在尝试编写代码时遇到此错误。我已经完成了其他 Stackflow 问题,但找不到答案。是什么导致了这个错误? var app = angular.module("app", ['ui.router'
我是一名优秀的程序员,十分优秀!