我有一个使用Aurelia框架的项目。我想创建应该在几个文件之间访问的global \ static对象。但是,当我尝试从其他文件访问它时,它说我的对象未定义。看起来是这样的:
FirstFile.ts
export function showA() {
console.log("Changed a to " + a);
}
export var a = 3;
export class FirstFile {
public ModifyA() {
a = 7;
showA();
}
它说a =7。然后像这样在其他文件中使用它。
SecondFile.ts
import FirstFile = require("src/FirstFile");
export class SecondFile {
showA_again() {
FirstFile.showA();
}
我在名为SecondFile.html的视图文件中执行showA_again()
<button click.trigger="showA_again()" class="au-target">Button</button>
当我单击按钮时,我在控制台中看到变量“ a”仍然为3。是否可以在文件之间存储变量?
我建议你注入FirstFile
到SecondFile
。现在,您的代码具有不良的体系结构味道。
要回答您的问题:可能您正在寻找静态(运动场样本)
export class FirstFile {
static showA = function() {
console.log("Changed a to " + FirstFile.a);
}
static a = 3;
public ModifyA() {
FirstFile.a = 7;
FirstFile.showA();
}
}
export class SecondFile {
showA_again() {
FirstFile.showA();
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句