angularjs – 当您只能访问模块变量时注入模块
发布时间:2020-12-17 17:30:56 所属栏目:安全 来源:网络整理
导读:假设你有一个 var app = angular.module('Mod1',[]) 现在你需要向该模块注入其他内容,但是你不能改变那一行,你只能访问app变量. 所以这不起作用吧? var mod2 = angular.module('mod2',[]).factory('$myService',function(){ return { do: function(){alert(
假设你有一个
var app = angular.module('Mod1',[]) 现在你需要向该模块注入其他内容,但是你不能改变那一行,你只能访问app变量. 所以这不起作用吧? var mod2 = angular.module('mod2',[]).factory('$myService',function(){ return { do: function(){alert('doing'); } }) app.directive('foo',[$myService]) // $myService here is undefined 你当然可以做到: injector = angular.injector(['mod2']) $myService = injector.get('$myService') 虽然我想知道是否有更优雅的解决方案 解决方法
这取决于您的代码实际运行的时间.
我尝试了 this plunker并且它有效. app.js var app = angular.module('plunker',[]); myModule.js var myModule = angular.module('myModule',[]); myModule.service('MyService',function() { return {test: 'MyService'}; }); app.requires.push('myModule'); app.controller('MainCtrl',['$scope','MyService',function($scope,MyService) { $scope.name = MyService.test; }]); 的index.html <head> <script src="app.js"></script> <script src="myModule.js"></script> </head> 您需要在加载app.js之后添加额外的模块,但是在相同的javascript执行序列中.超时和异步加载失败了. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Bootstrap 教程第一课:简单的 Bootstrap 主页
- apt-get在公司代理后面的docker中
- Scala REPL和Clojure REPL之间的区别 – 编译速度
- angular – 从新行开始文本
- twitter-bootstrap – 如何获取fontawesome工作在Azure网页
- 关于在angular2中引入第三方插件或者框架(jquery)
- twitter-bootstrap – 如何动态更改bootstrap模态数据 – 目
- angularjs – 当用ui-router显示404错误页面时,如何不更改u
- 如何在bash上修剪从标准输入读取的行?
- twitter-bootstrap – Twitter Bootstrap 3 – Navbar不是水