elementUi有bug :action="url"不能動態(tài)改變
解決方法:
1.action是一個必填參數(shù)寥枝,且其類型為string鞭光,我們把a(bǔ)ction寫成:action,然后后面跟著一個方法名,調(diào)用方法庆冕,返回你想要的地址,實現(xiàn)動態(tài)的去修改上傳地址
<el-upload? :action="UploadUrl()"? :on-success="UploadSuccess" :file-list="fileList">
? ? <el-button size="small" type="primary" >點擊上傳</el-button>
</el-upload>
// js 代碼在 methods中寫入需要調(diào)用的方法
methods:{
? ? UploadUrl:function(){
? ? ? ? return "返回需要上傳的地址";? ?
? ? }?
}
2.組件設(shè)計時劈榨,并不考慮改變原始值访递。 并且Vue的一些機(jī)制導(dǎo)致了這個問題
<el-upload class="upload-demo" :action="url" :before-upload="test">
? <el-button size="small" type="primary">點擊上傳</el-button>
</el-upload>
data () {
? ? ? return {
? ? ? ? url: '123'
? ? ? };
? ? },
? ? methods: {
? ? ? test (file) {
? ? ? ? return new Promise((resolve, reject) => {
? ? ? ? ? this.$nextTick(() => {
? ? ? ? ? ? this.url = '321'? ? ? ?
? ? ? ? ? ? resolve()
? ? ? ? ? })
? ? ? ? })
? ? ? }
? ? }