[英]Polymer not changing value of defined property
我正在使用digits-api登錄。 我正在使用附加的生命周期事件在附加時初始化腳本。
attached: function(){
console.log("Attached")
Digits.init({ consumerKey: '************' });
}
然后,在單擊按鈕時,用戶可以登錄。
onLoginButtonTap : function(){
Digits.logIn().done(this.onLogIn).fail(this.onFail);
},
用戶成功登錄后,它將轉到onLogIn函數。
onLogIn: function() {
console.log("Login Successfull");
this.loginStatus="Log Out"
}
因此,我要做的是將紙質按鈕內的文本從“登錄”更改為“注銷”。 我有一個屬性登錄狀態。
loginStatus:{
type : String,
value: "Log In",
notify: true,
reflectToAttribute: true
}
當我嘗試使用this.loginStatus =“ Log Out”更改onLogIn方法中的文本時。 它說Uncaught TypeError:無法設置未定義的屬性'loginStatus'。 所以基本上我在其他代碼中也看到了這一點。 我無法訪問函數內函數內部元素的ID。 這里同樣是我無法在函數內部更改函數中屬性值的問題。 我如何從這個問題中恢復過來。
<paper-button raised class="custom indigo" id="logIn">[[loginStatus]]</paper-button>
錯誤消息表明this
是undefined
。 對於您的情況,在指定回調時應this
綁定 :
Digits.logIn().done(this.onLogIn.bind(this)).fail(this.onFail.bind(this));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.