我有一个简单的 JSON,例如:
{
"Object 0": {}
}
我想将它显示为一棵树。 为此,我正在使用类似这样的东西
<span>{{key}}</span> // Object 0
<span>{{value}}</span> // {}
<ul>
<li ng-repeat="(key, value) in items" ng-include="'views/itemList.html'"></li>
</ul>
但是我希望能够更改任一键的名称及其值,所以我添加了
<input ng-model=”items[key]”>
在我的模板中,但它没有正常工作。我无法更改它的内容,因为一旦我更改它,它就不再是对象了 我也不知道如何在不创建新项目的情况下将键的名称从对象 0 更改为其他名称。有什么想法吗?
还有一种情况 我有。
$scope.test = {"test": "test1"}
我希望能够将这个 $scope.test 放入我的“对象 0”中,以便它生成
{
"Object 0": {
"test": "test1"
}
}
最佳答案
对于你的第二个要求,你可以简单地这样做
$scope.test = {"test": "test1"}
$scope.items = {
"Object 0": $scope.test
}
它会给你
object {
Object 0 : Object{
test:"test1"
}
}
您不能从 veiw 更改键,实际上,当您在 ng-model 中设置带有键的对象时,它会为该元素分配该键的值。它从 View 到 Controller 所做的事情是一样的。如果您从 View 更改此元素的值,它将更新分配给模型的键上对象的值。
关于javascript - AngularJS Modyfing json 与 ng-model,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41185719/