gpt4 book ai didi

angularjs - angular 1 $scope 和 Controller as,什么时候 $scope 死了?

转载 作者:行者123 更新时间:2023-12-01 03:26:16 24 4
gpt4 key购买 nike

因为什么时候存在“Controller as”,它从 angular 1.2 开始就不存在了? 2013年底发布?为什么人们、书籍、博客和教程用 $scope 编写代码,仍然在 2015、2014 年?

我曾在 2015 年和 2016 年看到有 1 年或 2 年经验的人使用 angular 1.1 或 angular 1.2 编程风格,他们迷失了 angular 1.5,例如不使用组件。

乔布斯要求 angular 只是要求“angular 程序员”,他们知道人们以不同的方式使用每个 angular 有很大的不同,例如使用 $scope,或者只是指令而不是组件,或者他们不使用 ES2015 和 babel?

我一直不明白。 $scope什么时候真的死了?
如果这个问题不是针对 stackoverflow,我可以在哪里发布?

最佳答案

Scope 并没有消亡,而且可能永远不会消亡。通常认为 controllerAs功能来取代 scope但事实并非如此。其实,controllerAs开始弃用 scope 的 View 模型责任,在此之前,每个模板的所有 View 模型成员都在组件范围内声明,现在它在组件的类 this 上声明。 ,最后,它成为作用域的成员,在内部将 View 模型的所有功能隔离在单个作用域成员中。

使用 controllerAs处理您的 View 模型是一种很好的做法,但是,您仍然需要 scope做,比如说,scope事物。例如发出和监听事件,处理消化周期等。因此,controllerAs将 View 模型与真实模型分开 scope责任。因此,Scope 从未真正消亡,只是通过优化的功能稍微改变了它的使用方式。

无论如何,这并不意味着使用旧的范围方式是不好的,或者使用 Controller 而不是组件。强烈建议采用这种做法,在大型项目中,它比小型项目更有意义。此外,旧项目是使用旧的 angularjs 功能构建的,因此突然变化就像将整个项目移动到新方式 controllerAscomponents不是一件容易做到的便宜事,尤其是在大型项目上。

关于angularjs - angular 1 $scope 和 Controller as,什么时候 $scope 死了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41329956/

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