例如,
angular.module('xxx',[]) .value();
再例如,綁定在$rootScope上面。
覺得自己腦子裡對這些有些模糊,想討論這個主題。
https://docs.angularjs.org/api/ng/type/angular.Module這個頁面的api都怎麼用,我覺得只看文件不是很懂。
1.一般來說,是不建議在$rootScope上面绑定过多的变量,这样一来程序的可维护性就会变差;当然只是不建议,特殊情况特殊处理;比如网站的title标题可能要经常换,所以这个绑定在$rootScope還是不錯的選擇。 2.Angular提供了兩種方法,一種方法就是你說的那個,還有就是下面的:
$rootScope
title
(function() { 'use strict'; angular .module('app') .constant('toastr', toastr) .constant('moment', moment); })();
3.一般來說使用value和constant已經可以了。
value
constant
1.我看你的情況應該是想在整個應用中使用這個函數,那麼你可以寫在服務中啊,Angular的Service就是為了提供全局公用的方法;上面的使用方法是為了可以使用一些外部的插件,或是配置一些應用的資訊而使用的,我這邊寫了一個例子,你可以看看,傳送門。
2.具體的程式碼可以看下面:
引入文件的順序
<script src="../lib/angular.js"></script> <script src="module.js"></script> <script src="app.js"></script>
index.html
<body ng-app="MyApp"> <h1>constant</h1> <p ng-controller="MyController as vm"> <p> {{vm.test}} </p> <p>{{vm.my_key}}</p> </p> </body>
module.js
(function(window){ // .. // exports var Test = { hello: function(){ console.log('hello'); } }; window.Test = Test; })(window);
app.js
(function(){ angular.module('MyApp', []) .constant('Test', Test) .constant('MyKey', 'q123nasbd12y38basd237y') .controller('MyController', MyController) .service('Service', Service); MyController.$inject = ['Test', 'Service', 'MyKey']; Service.$inject = []; function Service(){ var service = { info: info }; return service; function info(){ return 'info'; } } function MyController(Test, Service, MyKey){ var vm = this; vm.test = Service.info(); vm.my_key = MyKey; Test.hello(); } })();
1.一般來說,是不建議在
$rootScope
上面绑定过多的变量,这样一来程序的可维护性就会变差;当然只是不建议,特殊情况特殊处理;比如网站的title
标题可能要经常换,所以这个绑定在$rootScope
還是不錯的選擇。2.Angular提供了兩種方法,一種方法就是你說的那個,還有就是下面的:
3.一般來說使用
value
和constant
已經可以了。1.我看你的情況應該是想在整個應用中使用這個函數,那麼你可以寫在服務中啊,Angular的Service就是為了提供全局公用的方法;上面的使用方法是為了可以使用一些外部的插件,或是配置一些應用的資訊而使用的,我這邊寫了一個例子,你可以看看,傳送門。
2.具體的程式碼可以看下面:
引入文件的順序
index.html
module.js
app.js