2017-02-13 91 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