在AngularJS中,$watch是一个用于监视变量变化的内置函数。它可以用于监视控制器中的变量,并在变量发生变化时执行相应的操作。如果要从组件的控制器更改服务中的变量,可以按照以下步骤进行操作:
app.service('myService', function() {
this.myVariable = 'initial value';
});
app.controller('myController', function($scope, myService) {
$scope.myVariable = 'new value';
$scope.$watch('myVariable', function(newValue, oldValue) {
myService.myVariable = newValue;
});
});
在上述代码中,当控制器中的myVariable变量发生变化时,$watch函数会被触发,并将新值和旧值作为参数传递给回调函数。在回调函数中,我们可以将新值赋给服务中的变量。
通过以上步骤,我们可以实现从组件的控制器更改服务中的变量。请注意,这只是一个示例,实际应用中可能需要根据具体情况进行调整。
领取专属 10元无门槛券
手把手带您无忧上云