在angularjs中有时候路由跳转比值的传递或者赋值快一些,导致页面已经跳转了,而值还没有过来,进而会导致一些报错,所以就需要去监听某些关键的参数。
第一种方法:angularjs的$watch
<div ng-controller="myCtrl">
<input type="text" ng-model="inputTxt"/>
<p>{
{inputTxt}}</p>
</div>
<script>
var app = angular.module('myCtrl', ['ng']);
app.controller('myCtrl', function ($scope) {
console.log($scope.inputTxt);
//监听模型数据的值的变化
$scope.$watch('inputTxt',function(nv,ov){//nv代表新的值,ov代表旧的值
if(nv){
console.log($scope.inputTxt)
}
})
})
</script>
使用angularjs内置的watch方法监听作用域$scope上的值 ,如果值发生变化就会监听到有新的值(也就是nv)
第二种方法:使用定时器$interval循环查找
这种方法适用于变量没有在