在表单提交后清除输入时我有些困惑。代码如下。
HTML:
<form novalidate method="POST">
<input ng-model="person.firstName" type="text" id="firstName" />
<button ng-click="edit(person)" name="saveBtn" >{{text}}</button>
控制器:
app.controller('PersonCtrl', function ($scope, $routeParams, personService) {
$scope.init = function () {
$scope.person = {};
};
$scope.edit = function (person) {
personService.insertPerson(person.firstName);
person.firstName = "";
};
$scope.init();
});
问题:
如果我使用person.firstName = ""; OR $scope.person.firstName = "";
两者都有相同的行为和清除输入罚款。它如何知道html中的person.firstName,我没有提到任何范围* ? *。不知道这是否是有效的问题,但每当我需要与html绑定值进行交互时,需要使用$ scope。
答案 0 :(得分:1)
这是因为$ scope.person和person指向$ scope.edit函数中的同一个对象($scope.person === person
为真)。