2017-10-09 16 views
0

我有一個上傳組件,在消息發送後提交。在該組件中,我有一個action,它說明請求URL是v-bind ed。但是,每次我打電話給參考時,v-bind似乎都沒有觸發,只是給了我一個空白。我使用Element UI btw。在Vue中引用組件時調用v-bind嗎?

HTML

<el-upload :action="latestMessageAttachmentUrl" ref="uploadFiles"></el-upload> 

JS

submitMessage() { 
    // Submit data to server 
    return api.createMessage(messageToSend, (message) => { 
    this.latestMessageAttachmentUrl = './messages/' + message.id + '/attachments'; 
    this.$refs.uploadFiles.submit(); 
    }); 
} 
+0

提交是'latestMe在'data'部分中定義的ssageAttachmentUrl? –

+0

是的先生它的定義 –

+0

可能你需要把提交調用在[nextTick](https://vuejs.org/v2/api/#vm-nextTick) –

回答

1

因爲Vue公司不更新查看權更新時的數據變化,所以你應該在nextTick

submitMessage() { 
    // Submit data to server 
    return api.createMessage(messageToSend, (message) => { 
    this.latestMessageAttachmentUrl = './messages/' + message.id + '/attachments'; 
    this.$nextTick(() => { 
     this.$refs.uploadFiles.submit(); 
    }) 
    }); 
}