Rumah > Soal Jawab > teks badan
在看一个$injector用法的demo,下面是demo的所有代码:
<!DOCTYPE html> <html lang="en" ng-app="a4_6"> <head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript" src="../bower_components/angular/angular.min.js"></script> </head> <body> <h1>has和get方法的示例</h1> <p ng-controller="c4_6"> <!--视图组件--> </p> </body> <script type="text/javascript"> var a4_6 = angular.module('a4_6',[]) .factory('$custom', function(){ return { print: function(msg){ console.log(msg); } }; }); var injector = angular.injector(['a4_6','ng']); var has = injector.has('$custom'); console.log(has); if(has){ var custom = injector.get('$custom'); custom.print("控制台输出任意的内容"); } a4_6.controller('c4_6',['$scope','$custom', function($scope,$custom){ //控制器代码 }]); </script> </html>
var injector = angular.injector(['a4_6','ng']);
这句话里的ng是什么意思啊?
过去多啦不再A梦2017-05-15 17:07:17
merujuk kepada modul teras ‘ng’, iaitu, modul teras sudut var injector = angular.injector(["ng"]) mencipta $injector sendiri dan bukannya $injector yang dicipta secara automatik apabila aplikasi bermula. Untuk membuat $injector sendiri, anda perlu lulus senarai modul Dalam contoh di atas, terdapat dua modul 'a4_6' dan 'ng'. Jika anda perlu menggunakan mana-mana perkhidmatan dalam teras Angular anda mesti nyatakan modul ng secara eksplisit. Kaedah angular.module akan menganggap bahawa anda mempunyai pergantungan pada modul ng dan secara senyap-senyap akan menambah "ng" pada senarai kebergantungan anda, manakala fungsi penyuntik tidak akan membuat sebarang andaian tentang modul pergantungan.