gpt4 book ai didi

javascript - 使用 Vue.js 替换输入中的文件

转载 作者:行者123 更新时间:2023-12-03 02:23:16 25 4
gpt4 key购买 nike

我有 Vue.js 模板文件,其中包含文档的数据。我的页面有表格。表格中的行带有输入按钮上传文件,如下所示

<tr v-for="(doc, index) in documents">
<td :id="'doc-' + doc.id" v-show="doc.visible">
<div class="row">
<div class="col-md-9">
<a v-if="doc.document" :href="doc.document.file" v-text="doc.name"></a>
<div v-else v-text="doc.name"></div>
</div>

<div class="col-md-3">
<div class="row">
<div v-if="doc.document" class="col-md-8">
<label :for="'upload_doc_' + doc.id">
<span class="glyphicon glyphicon-upload text-primary" role="button"> Upload</span>
<input type="file"
:id="'upload_doc_' + doc.id"
class="hidden"
@change="replaceDoc($event, index)"
/>
</label>
</div>
</div>
</div>
</div>
</td>

因此,有些行可能包含一些文件,有些则不包含。但按钮应该替换或添加文件到该行。所以我写了方法:

methods: {
replaceDoc (event, index) {
this.documents[index] = event.target.files[0]
},

但它似乎不包含任何数据,当我尝试将其发送到服务器时,它发送空字典。

最佳答案

您是否尝试过使用Vue.set或this.$set

而不是:

this.documents[index] = event.target.files[0]

试试这个:

this.$set(this.documents, index, event.target.files[0]);

或者

Vue.set(this.documents, index, event.target.files[0]);

可以引用这个API .

关于javascript - 使用 Vue.js 替换输入中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49063964/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com