簡體   English   中英

聚合物不改變定義特性的值

[英]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>

錯誤消息表明thisundefined 對於您的情況,在指定回調時應this綁定

Digits.logIn().done(this.onLogIn.bind(this)).fail(this.onFail.bind(this));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM