非组件控制器中的 $onChanges
$onChanges in non component controller
我正在使用 angular 1.5 并且我有控制器,但它不是一个组件,只是普通的控制器。我尝试在此使用 $onChanges,但它不起作用。那么,实际上可以在非组件控制器上使用 $onChanges 吗?
Components have a well-defined lifecycle Each component can implement
"lifecycle hooks". One of the hooks is $onChanges
如果您想检测更改而不使用 Angular 1.5 组件功能,那么您可以选择以下选项:
- 创建一个组件,以便您可以使应用程序的这一部分可重用,并使用此版本的 Angular 开箱即用地使用它提供的大部分生命周期挂钩。
由于您没有说明您的实际使用情况,您可以根据您的需要尝试以下操作:
- 如果您绑定到 HTML5 input/select/radio 元素,则使用
ng-model
进行 two-way 数据绑定,这样当用户更新它时,您的模型将自动更新。
- 将
ng-change
与上面的 ng-model
结合使用,这样您就可以在值更改时添加一些额外的行为。 Reference
- 如果您真的没有选择上面的选项并在不再需要时销毁它,请使用
$watch
。 Reference
此外,请在您的问题中提及您想要实现的目标。一个 jsfiddle 会很好,可以让你得到更清晰的答案。
我正在使用 angular 1.5 并且我有控制器,但它不是一个组件,只是普通的控制器。我尝试在此使用 $onChanges,但它不起作用。那么,实际上可以在非组件控制器上使用 $onChanges 吗?
Components have a well-defined lifecycle Each component can implement "lifecycle hooks". One of the hooks is
$onChanges
如果您想检测更改而不使用 Angular 1.5 组件功能,那么您可以选择以下选项:
- 创建一个组件,以便您可以使应用程序的这一部分可重用,并使用此版本的 Angular 开箱即用地使用它提供的大部分生命周期挂钩。
由于您没有说明您的实际使用情况,您可以根据您的需要尝试以下操作:
- 如果您绑定到 HTML5 input/select/radio 元素,则使用
ng-model
进行 two-way 数据绑定,这样当用户更新它时,您的模型将自动更新。 - 将
ng-change
与上面的ng-model
结合使用,这样您就可以在值更改时添加一些额外的行为。 Reference - 如果您真的没有选择上面的选项并在不再需要时销毁它,请使用
$watch
。 Reference
此外,请在您的问题中提及您想要实现的目标。一个 jsfiddle 会很好,可以让你得到更清晰的答案。