2017-10-09 17 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(); 
    }) 
    }); 
}