我正在尝试使用$ scope.commentText的值,但是当我调用addComment()时,即使已绑定范围变量也为空。作为一种解决方法,我将commentext作为有效的参数值进行传递,但仍然应该起作用。我的问题是如何清除绑定到文本输入的commentText ...,但也无法按预期工作。我环顾四周...我遗漏了一些东西,因为我完全按照文档告诉我的去做。所以...有人吗?
$scope.user = "WM";
$scope.commentText='';
$scope.addComment = function(plan, commentText) {
console.log(commentText)
plan.comments.push({text:commentText, user:$scope.user);
commentText=null;
$scope.commentText=null;
};
和视图:
<form ng-submit="addComment(plan, commentText)">
<div class="input-group">
<input class="form-control" type="text" ng-model="commentText" size="30" placeholder="add new comment here">
<span class="input-group-btn">
<input class="btn btn-primary" type="submit" value="add">
</span>
</div>
</form>
塞子:http://plnkr.co/edit/lG0Ckjctsj9Hu83lTydh?p=preview
最佳答案
在this.commentText=null;
方法中使用$scope.commentText=null
代替addComment
。
更新了您的plunkr
编辑:当我发现这里有一个出色的解释时,我开始输入一种解释:
'this' vs $scope in AngularJS controllers