不使用Angular js更新视图中的Javascript对象
在过去的几天里,我一直在和angularjs打交道,现在我已经开始和javascript对象打交道了,我遇到了麻烦 我试图在视图中表示对象的属性,然后在页面加载后更改该对象并更改视图。即 Html 我不知道我是否遗漏了什么,或者只是对框架的结构有一个基本的误解。无论采用哪种方式,都会得到一些帮助:)我当前的代码位于:不使用Angular js更新视图中的Javascript对象,javascript,angularjs,object,Javascript,Angularjs,Object,在过去的几天里,我一直在和angularjs打交道,现在我已经开始和javascript对象打交道了,我遇到了麻烦 我试图在视图中表示对象的属性,然后在页面加载后更改该对象并更改视图。即 Html 我不知道我是否遗漏了什么,或者只是对框架的结构有一个基本的误解。无论采用哪种方式,都会得到一些帮助:)我当前的代码位于: 它用于在按下键时更新对象您正在angularjs上下文之外更改范围变量。由于要对jquery事件进行更改,因此在更改指令中的scope变量时需要调用scope.$apply。查看
它用于在按下键时更新对象您正在angularjs上下文之外更改范围变量。由于要对jquery事件进行更改,因此在更改指令中的scope变量时需要调用scope.$apply。查看我更新的plunker 以下是相关代码:
jQuery(document).on('keydown', function(e){
scope.$apply(function(){
scope.new_object();
});
});
app.controller('MainCtrl', ['$scope', function($scope) {
$scope.message_object = new object("A");
$scope.replace_message = function(){ //Happens sometime after page load
alert("Replacing...");
$scope.object = new object("B");
}
}]);
function object(attribute){
this.attribute = attribute;
}
jQuery(document).on('keydown', function(e){
scope.$apply(function(){
scope.new_object();
});
});