gpt4 book ai didi

javascript - AngularJS $scope 和 Controller 作为语法真的没有区别吗?

转载 作者:行者123 更新时间:2023-11-30 09:53:10 25 4
gpt4 key购买 nike

我正在学习 angularJS,在学习的同时发现 Controller 作为语法更容易阅读,对于来自 OO 世界的我来说也更容易理解。我已经阅读了几篇文章和 SO 答案,它们似乎都指向 $scope 和“controller as”语法相同,而“controller as”语法只是语法糖。

但是,我在 SO here 上发布了另一个问题回答问题的用户说,即使我使用 Controller 作为语法,我仍然必须注入(inject) $scope 才能使用“ui select”指令。是哪个?如果我不必使用 $scope,我缺少什么来获得“controller as”语法来使用 ui-select?

最佳答案

抱歉,这太长了,没有示例。

Controller 和 Controller As 两种形式的 Controller 都是函数。与我理解的主要区别是 Controller As when called 是使用 new 关键字调用的,这就是“this”语法起作用的原因。这也是为什么您可以使用 Controller As 语法进行原型(prototype)继承,而不能使用普通的 Controller 语法进行原型(prototype)继承。关于 Controller 的另一个很酷的部分是命名空间,你可以在其中放置范围变量,这意味着在 HTML 中很容易推断出哪些部分去哪个 Controller 。如果您愿意,我可以举例说明,但这是我理解的核心差异。

关于javascript - AngularJS $scope 和 Controller 作为语法真的没有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35282922/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com