处理控制器内部的公共变量

问题描述

我对 Salesforce 非常陌生。我正在使用一些变量,这些变量在此控制器内的多个方法中很常见。有没有办法定义一次变量并在这个组件方法中重用它们?

控制器

doInit : function(cmp,event,helper) {
   var categoryUsed = 'Abc';
   var locations = ['ten','twenty','thirty'];
   var address = window.location.search;
   //other logic1
},handleFlag : function(cmp,'thirty'];
   var address = window.location.search;
   //other logic2
},handleArea : function(cmp,'thirty'];
   var address = window.location.search;
   //other logic3
}

有没有办法一次性声明这些公共变量(categoryUsed、locations、address)并在该组件内的所有上述方法中使用?

解决方法

在像这样的 Aura 组件中,您的持久或共享存储应该在组件属性中。

另一种方法是将使用常量值和共享逻辑的公共代码(而不是或除了共享状态本身)分解为辅助对象,以减少代码重复。

Aura 是一个过时的框架。虽然仍有少数地方需要 Aura,但如果您的用例允许,请考虑改用 Lightning Web 组件。 LWC 允许您使用更主流、易于理解的结构来构建组件,包括具有实例变量的模块和类。