我有一些静态配置类似的值,在整个Web应用程序中使用。目前我正在创建指令将它们放入var address = address;
var amount = 0;
function changeAmount()
{
var page=require('webpage').create();
page.open (address, function(){
//parse json, set amount to something (usually 4)
amount = 4;
});
}
changeAmount();
console.log(amount); //prints 0
//Do stuff with amount
phantom.exit(); //amount not changed yet.
,但这看起来非常浪费。
角度表达式是否有办法直接访问某些模块或Javascript全局范围中定义的某种“静态”值?
答案 0 :(得分:2)
首先,考虑是否可以使用全局/静态...
如果是这样,请将您的静态定义为angular的值:
incomingNumber
您可以使用具有正常依赖注入的代码中的那些全局变量;使用run函数将它们放在angular.module('globals', [])
.value('serverConfig', 'xyz')
.value('foo', { x:4, y: 5 })
// etc
中,以便它们也可以在表达式中使用:
$rootScope
如果您只需要在表达式中使用它们,只需使用angular.module(...)
.run(['$rootScope', 'serverConfig', 'foo', function($rootScope, serverConfig, foo) {
$rootScope.serverConfig = serverConfig;
$rootScope.foo = foo;
// etc
}]);
函数。
答案 1 :(得分:0)
你可以在angularjs中使用常量,这会很有用。
module.constant(name,object);
或
module.value(name,object);
或
你可以在html5中使用localStorage(它不能存储对象),用于存储对象使用localStorageModule第三方js