Angularjs 将属性插入到$scope中
是否有一种方法可以将属性或函数注入$scope,并将其传递给每个控制器/其他控制器,以便在应用程序的其余部分中使用?当我们创建ng应用程序时可以设置一些东西。是的,实际上你可以使用任何你想要的东西。但通常使用Angularjs 将属性插入到$scope中,angularjs,dependency-injection,scope,Angularjs,Dependency Injection,Scope,是否有一种方法可以将属性或函数注入$scope,并将其传递给每个控制器/其他控制器,以便在应用程序的其余部分中使用?当我们创建ng应用程序时可以设置一些东西。是的,实际上你可以使用任何你想要的东西。但通常使用.constant()(对于不改变的值)或.value()(可能改变的可注入值)最有意义 因此,您可以执行以下操作: angular.module("myApp", []).constant('MY_FIX_VALUE', 5); // and use it like this angul
.constant()
(对于不改变的值)或.value()
(可能改变的可注入值)最有意义
因此,您可以执行以下操作:
angular.module("myApp", []).constant('MY_FIX_VALUE', 5);
// and use it like this
angular.module("myApp").controller('FooCtrl', ['MY_FIX_VALUE', function (MY_FIX_VALUE) {
}]);
您可以使用
$rootScope
设置“全局”属性。例如,定义应用程序后:
app.run(function($rootScope) {
return $rootScope.RESQUE = 'http://localhost:7999/resque/overview';
});
然后可以使用{{RESQUE}
在HTML中访问此属性
您还可以使用.constant():
然后像其他依赖项一样将其注入控制器。您应该查找值、常量、服务、,工厂和提供商服务。你是否建议我创建自己的对象来注入,而不是注入$scope?我发现这篇文章似乎是我所追求的,因为服务可以在整个应用程序中重用,它们是最佳选择。谢谢@PascalPrecht,但我正在尝试向其中添加一系列可重用的函数$rootScope或$scope,这样我就可以从我的任何控制器访问它们了,你有没有一个例子来说明我如何在不定义常量的情况下做到这一点?听起来像是一个完美的服务用例:)
angular.module("awesomeApp", []).constant('RESQUE', 'http://localhost:7999/resque/overview');