如果您在视图中有以下内容:
<span ng-model="foo.bar1"></span>
<span ng-model="foo.bar2"></span>
<span ng-model="foo.bar3"></span>
因为Angular如何映射你在控制器中无法做的对象:
$scope.foo.bar2 = "something";
相反,您需要这样做:
$scope.foo = {
bar1: "value1",
bar2: "something",
bar3: "value2"
}
那么,如果我只需要更改该对象的一个属性,我每次都需要重新分配其他值吗?
答案 0 :(得分:0)
如果你有:
$scope.foo = {
bar1: "bar1Value", // any initialization value for all 3
bar2: "bar2Value",
bar3: "bar3Value"
}
或只是
$scope.foo = {};
然后你可以这样做:
$scope.foo.bar2 = "something";
在初始化之后,无论你想要什么。
答案 1 :(得分:0)
根本不需要。您需要做的就是初始化。以下是一段示例代码:
在控制器中
$scope.person ={
age: 30,
sex: 'male',
name: 'hero',
occupation: 'actor'
}
在HTML中
<h3>Person Details</h3>
<p><input type="text" ng-model="person.occupation"></p>
<span>{{person.name}},</span>
<span>{{person.age}},</span>
<span>{{person.sex}},</span>
<span>{{person.occupation}}</span>
现在,如果您不断更改文本框中的值,它会反映在下面的人员详细信息中。