随着 AngularJS V1.7 的发布,预先分配绑定到的选项已被弃用和删除:
由于38f8c9,构造函数中不再提供指令绑定。
要迁移您的代码:
- 如果您指定
$compileProvider.preAssignBindingsEnabled(true)
,您需要首先迁移您的代码,以便可以将标志翻转为false
. “从 1.5 迁移到 1.6”指南中提供了有关如何执行此操作的说明 。之后,删除该$compileProvider.preAssignBindingsEnabled(true)
语句。
由于bcd0d4,默认情况下禁用控制器实例上的预分配绑定。 我们强烈建议尽快迁移您的应用程序以使其不再依赖它。
依赖于存在绑定的初始化逻辑应该放在控制器的
$onInit()
方法中,保证总是在绑定分配后调用。
当代码必须移动到$onInit
Life-Cycle Hook时,有哪些用例?我们什么时候可以将代码留在控制器构造函数中?