在angularjs中手动触发$ watch事件

Dra*_*ex_ 27 javascript angularjs

我用这个代码:

$scope.$watch('message', function()
{
    // the code
});
Run Code Online (Sandbox Code Playgroud)

有没有办法手动触发消息的更改事件,所以代码会被执行?

Sha*_*.io 43

几个选项:

  1. 使用$ scope.$ apply()来运行调用所有监视表达式的摘要循环

  2. 将内部监视代码放入函数内并手动调用

  3. 改变messages:)


rob*_*uck 12

这里的另一个选择是单独声明该函数并使用$scope.watch指针.

var watchFunction = function(){
    // the code
}

$scope.$watch('message',watchFunction);

watchFunction();
Run Code Online (Sandbox Code Playgroud)