javascript - TypeScript - 访问内部对象中的变量
问题描述
我有一个类型脚本类,它接受一个 url(字符串)作为构造函数中的参数。在类中,我有另一个类,它是 devextreme 数据网格的视图模型。我面临的问题是我不知道如何访问内部对象(GridViewModel)中的 url 属性,该对象具有作为其中一部分的功能。
export class MyClassOne {
private myUrl: string;
constructor(url: string) {
this.myUrl = url;
}
public GridViewModel = {
dataGridOptions: {
dataSource : { store: someSource}
...
aFunction: function(e){
// this.myUrl is undefined
var postUrl = this.myUrl;
}
}
}
}
var myClassOne = new MyClassOne("https://www.google.com");
我的问题是,如何在内部对象函数中访问“this.myUrl”?请帮忙
谢谢,
解决方案
'this'的范围在函数内部发生了变化。你可以创建一个保留范围的箭头函数,或者使用一个self 变量来保存外部范围。
例如带有箭头运算符的函数。您的功能可以替换为
e => {
var postUrl = this.myUrl;
}
推荐阅读
- javascript - 如何将数据从孩子发送到父母的父母
- java - Java GUI 缩放问题
- javascript - 将字符串更改为双引号
- python - Python。获取每列沿行的不间断段长度
- r - 将 Matrix::sparseMatrix 传递给 Rcpp
- jquery - 由于用户未通过身份验证,Flask + Ajax 调用“随机”失败
- git - 无法使用 rebase 拉取:您有未暂存的更改
- c# - 在 Visual Studio C# 中的 PictureBox 中填写函数?
- excel - XLSXWriter和Excel“=FILTER()”函数?
- javascript - 为什么我的影子 dom 会破坏我的自定义元素?