<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>AngularJS依赖注入 Value和Constant的区别</title> <script type="text/javascript" src="../js/angular.js" ></script> <script> /* Value和Constant的区别: * angularJS可以通过constant()和value()注入值。对于创建服务也是很重要的。 相同点:都可以接受两个参数,name和value。 不同点: constant()可以将一个已经存在的变量值注册为服务,并将其注入到应用的其他部分中。 而value则会抛出异常。即:常量可以注入到配置函数中,而值不行。 */ var name,word; var app = angular.module("myApp",[]); // 1. constant()可以将一个已经存在的变量值注册为服务,并将其注入到应用的其他部分中 app.constant("myConstant","学而时习之,不亦说乎。"); // 创建 value值对象 "myValue" 传递数据,不过不能注入到config()函数中; app.value("myValue","学而不思则罔,思而不学则殆!"); // 2. 常量constant可以注入到配置函数中,将一个已经存在的变量值注册为服务,并将其注入到应用的其他部分中。 app.config(function(myConstant){ alert(myConstant); name = myConstant; }); // 相同点:都可以接受两个参数,name和value。 app.controller("myCtrl",function($scope,myConstant){ $scope.famousWords = myConstant; $scope.name = name; }); // 3. 值value不可以注入到配置函数中,否则会抛出异常:Unknown provider: myValue // app.config(function(myValue){ // alert(myValue); // word = myValue; // }); // // 相同点:都可以接受两个参数,name和value。 // app.controller("myCtrl",function($scope,myValue){ // $scope.value = myValue; // $scope.word = word; // }); </script> </head> <body ng-app="myApp" ng-controller="myCtrl"> <p>孔子曰:{{famousWords}}</p> <p>孔子曰:{{name}}</p> <p>孔子曰:{{value}}</p> <p>孔子曰:{{word}}</p> </body> </html>
AngularJS依赖注入 Value和Constant的区别
最新推荐文章于 2022-08-10 11:04:08 发布