$watch breaks ng模型绑定(angularJS)
我有两个不同ng型号的文本框。我在第一个文本框上使用$watch填充第二个文本框,但是当我修改第二个文本框并保存更改时,两个文本框中保存的值相同。我希望能够保存第二个文本框的更新值。如果我不使用$watch,两个文本框的值都是正确的。所以,我认为$watch是如何打破绑定的。有没有一种方法可以同时使用$watch获取更新的值?非常感谢。 这是示例代码, HTML$watch breaks ng模型绑定(angularJS),angularjs,Angularjs,我有两个不同ng型号的文本框。我在第一个文本框上使用$watch填充第二个文本框,但是当我修改第二个文本框并保存更改时,两个文本框中保存的值相同。我希望能够保存第二个文本框的更新值。如果我不使用$watch,两个文本框的值都是正确的。所以,我认为$watch是如何打破绑定的。有没有一种方法可以同时使用$watch获取更新的值?非常感谢。 这是示例代码, HTML $scope.$watch('model1',function(){ (if ($scope.model2 == null)){
$scope.$watch('model1',function(){
(if ($scope.model2 == null)){
$scope.model2 = $scope.model1;
})
}
我知道我做错了什么。我需要给出一个条件,当我想要更改值时,或者它总是将其更改为model1,因为我基本上是将model1的值分配给model2。一个简单的空检查就成功了
$scope.$watch('model1',function(){
(if ($scope.model2 == null)){
$scope.model2 = $scope.model1;
})
}
谢谢大家的帮助 你能用你的代码创建一个JSFIDLE或plunk吗?如果没有看到一些代码,很难说到底出了什么问题,但听起来你的$watch
不正确地更新了这两个属性。你是不是直接从代码中复制了你的示例?如果是这样,请正确标记。您缺少并混淆了一些字符:
和
这是我为您创建的一个工作小提琴:请解释您还希望它做什么。根据小提琴,使用您在此处发布的代码的精确副本,可以正常工作,我相信您描述的问题一定发生在代码的其他地方。
$scope.$watch('model1',function(){
(if ($scope.model2 == null)){
$scope.model2 = $scope.model1;
})
}