将绑定的数据推入对象不起作用
push binded data into object doesn't work?
演示和代码在这里:http://plnkr.co/edit/9tSbJBAE8qPr7DKeGUla?p=preview
我试图让我的选项卡动态允许用户添加更多的选项卡,但它似乎不能抓取名称,我想知道我绑定它与ngmodel。
<input type="text" ng-model="NewTabName"/>
<button ng-click="addTab()">Add</button>
js
$scope.addTab = function(){
$scope.tabs.push({
"name" : $scope.NewTabName
});
$scope.NewTabName = "";
}
Replace:
$scope.tabs.push({
"name" : $scope.NewTabName
});
$scope.NewTabName = "";
:
$scope.tabs.push({
"name" : this.NewTabName //Use this instead of $scope
});
this.NewTabName = ""; //Use this instead of $scope
问题是范围继承,NewTabName
属性是在$scope的子范围上创建的。通过使用this
,我可以访问触发事件的正确范围。
此处更新plunkr: http://plnkr.co/edit/OpVWtmt0k3LKsMPbGUIY?p=preview
你必须将ng-model
绑定到某个对象的属性而不是对象本身。否则,它(即角)可能(在这种情况下是)创建一个对象NewTabName
在其他范围比你认为它是。
$scope.addTab = function(){
$scope.tabs.push({
"name" : $scope.NewTabName.text
});
$scope.NewTabName.text = "";
}
<input type="text" ng-model="NewTabName.text"/>
<button ng-click="addTab()">Add</button>
相关文章:
- JavaScript参数对象不起作用
- Javascript敲除绑定嵌套对象不起作用
- 反应.js - 处于异步数据状态的深层对象不起作用
- 为什么这个对象不起作用
- KnockoutJS - 创建对象不起作用
- Javascript 如果元素不存在返回,则导致对象不起作用
- 通过指令范围传递对象不起作用
- 通过原型扩展数学对象不起作用
- Concat 对象不起作用,或者我需要将值转换为正确的格式
- 使用速记检查未定义的对象不起作用
- 将信息从表单值推送到对象不起作用
- 淘汰:在对象不起作用的情况下进行多选
- 解析函数对Node.js中的promise对象不起作用
- Angularjs指令隔离了对象不起作用的范围+单向数据绑定
- Mongoose - find():搜索选项中的对象不起作用
- 在函数内部生成的对象不起作用,但是传入的对象起作用
- .focus()对克隆对象不起作用
- Ng-click对不透明度为1的对象不起作用
- Javascript对象不起作用
- 将绑定的数据推入对象不起作用