我需要一种方法来访问 aurelia 制作的对象列表。
具体来说,我有一个名为 current-user.ts 的文件。该文件中包含以下代码:
export var currentUser = null;
我需要一种方法来访问这个变量的值。最好不调用任何函数。(我正在尝试将用户价值注入一个名为 Dynatrace 的应用程序中。)
我曾尝试浏览window
anddocument.body.aurelia.container
类,但找不到获取价值的方法。
我需要一种方法来访问 aurelia 制作的对象列表。
具体来说,我有一个名为 current-user.ts 的文件。该文件中包含以下代码:
export var currentUser = null;
我需要一种方法来访问这个变量的值。最好不调用任何函数。(我正在尝试将用户价值注入一个名为 Dynatrace 的应用程序中。)
我曾尝试浏览window
anddocument.body.aurelia.container
类,但找不到获取价值的方法。
在具有 Aurelia 行为(自定义元素/自定义属性)的任何元素上,您可以通过以下方式访问底层视图模型:
element.au.controller.viewModel
viewModel
通常是自定义元素,如果您在同一个元素上有自定义元素和自定义属性,并且您想要访问自定义属性,您可以这样做
element.au['my-custom-attribute']
获取自定义属性视图模型。
除此之外,在应用程序的根元素中,您可以通过以下方式检索 aurelia 实例
element.aurelia
如果您想从您的 Aurelia 代码和其他一些应用程序/js 代码中访问该变量,那么使用 window 对象可能是最简单的方法。
您还可以在当前用户类中添加一个 getter/setter 来更新内部属性和窗口对象,例如
class currentUser {
private _userName: string;
get userName(): string {
return this._userName;
}
set userName(userName: string) {
this._userName = userName;
window['currentUserName'] = userName;
}
}
let user = new currentUser();
user.userName = 'foo';
// both will output 'foo'
console.log(user.userName);
console.log(window['currentUserName']);