gpt4 book ai didi

angularjs - 污染 $scope 对象会影响性能吗?

转载 作者:行者123 更新时间:2023-12-03 23:24:38 25 4
gpt4 key购买 nike

我有一个 Controller ,其中 $scope 对象已用于存储仅在同一 Controller 中本地使用的方法和值。有很多这样的事情发生:

$scope.foo = 'something';
$scope.bar = 'something else';

... 等等。这些值均未在 View 中使用。我的问题是污染 $scope 对象会影响性能吗?清理它是不是一个好主意,以便仅 View 所需的值和方法包含在 $scope 对象中?

最佳答案

是的,污染 $scope确实会影响性能,但这取决于您的范围有多个观察者,这些观察者经常更改,这将产生更多的间接费用。引用 this answer这涵盖了同一点

为了避免这种情况,我建议您对代码进行良好的重构

在需要时处理 Controller 中的所有逻辑,否则通过充分利用每个组件来分离逻辑。

  • 将常用方法(逻辑)移至service/factory/provider它在多个地方使用,因此可以共享。
  • 如果某些值是固定的,它们不会改变,然后将它们移动到 constant/value
  • 每当您觉得自己有相同的逻辑需要保留在 $scope 中时然后它自己将该逻辑移动到通用 Controller 。需要时,您可以使用 $controller 注入(inject)当前 Controller 范围。喷油器

  • 另请参阅 Understanding Of Scope为了清楚地理解范围的使用

    关于angularjs - 污染 $scope 对象会影响性能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30221978/

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