我正在实施以下代码:
isValidLogin():Observable<boolean> {
return this.http.get(this._checkLoginUrl)
.map(res=>res.json())
.map((res) => {
if (res.success) {
this.loggedIn = true;
}
return res;
});
}
透明的Js:
LoginService.prototype.isValidLogin = function () {
var _this = this;
return this.http.get(this._checkLoginUrl)
.map(function (res) { return res.json(); })
.map(function (res) {
if (res.success) {
_this.loggedIn = true;
}
return res;
});
};
此处loggedIn
是该类的公共属性,但它显示undefined
和this
此处成为Map对象上下文,并且无法为{{{{}赋值1}}。
我认为lambda表达式应该能够访问类对象的这个上下文。 我在这里做错了吗?
答案 0 :(得分:0)
我认为lambda表达式应该能够访问类对象的这个上下文。我在这里做错了什么
班级成员可能也需要箭头。而不是:
isValidLogin = ():Observable<boolean> => {
写:
suites:
- name: default
data_bags_path: 'databags'
run_list:
- recipe[x::y]
attributes: {'kitchen' : 'true' }
https://basarat.gitbooks.io/typescript/content/docs/arrow-functions.html