2017-02-13 83 views
0

我已經在父組件下面的標記子組件的屬性不被更新()

.... 
<div class="container-fluid"> 
      <claims :userID="userId"></claims> 
      <claimForm :claimID="claimId" v-if="isDistributor"></claimForm> 
      </div> 
     </div> 
     </div> 
     <div class="col-lg-6"> 
     <div class="row"> 
      <display :claimID="claimId"></display> 

........... 
data(){ return { claimId: null } }, 
beforeMount(){ 
     this.userId = this.isDistributor? this.currentUser.id: null 

     this.eventEmitter.$on('claim.details', function(id) { 
      this.claimId = id 
     }) 
     } 

然後,在子組件被稱爲<display>

​​

當事件總線this.eventEmitter.$emit()是散發父組件數據claimdId被更新,但是子組件的claimID屬性似乎沒有更新,因此「手錶」未被觸發。

什麼會導致該屬性不被更新?

回答

1

至於解釋here

HTML屬性是不區分大小寫的,因此,使用非字符串模板時,駝峯格式託名需要使用他們的烤肉情況(連字符分隔)等同於:

所以你的代碼應該是:

<claimForm :claim-iD="claimId" v-if="isDistributor"></claimForm> 
+0

感謝您的見解,但是當我還沒有這一點,仍然沒有然而使用的實際值'<.... ClaimID的=「1工作8「v-if ....>'出於某種原因 – Kendall