|
@@ -134,32 +134,28 @@
|
|
|
:style="{ width: value.width || '100%' }"
|
|
|
size="small"
|
|
|
/>
|
|
|
- <!-- @change="dateRangeChange(value, key)" -->
|
|
|
-
|
|
|
- <!--
|
|
|
- 单文件上传:
|
|
|
- type: 'upload'
|
|
|
- -->
|
|
|
- <!-- <div v-else-if="value.type === 'upload'">
|
|
|
-
|
|
|
- <file-select v-if="!value.disabled" v-model="fileData[key]" @selectAfter="selectFile(key)"/>
|
|
|
- <fly-img style="padding-top: 10px" :src="insideData[key]" :del="!value.disabled"
|
|
|
- @close="removeFile(key)"/>
|
|
|
- </div> -->
|
|
|
-
|
|
|
- <!--
|
|
|
- 多文件上传:
|
|
|
- type: 'upload'
|
|
|
- maxSelectNum: 最多上传几个文件
|
|
|
- -->
|
|
|
- <!-- <div v-else-if="value.type === 'uploads'">
|
|
|
- <file-select v-if="!value.disabled" v-model="insideData[key]" :max-select-num="value.maxSelectNum || 6"/>
|
|
|
- <div v-for="(item,index) in insideData[key]">
|
|
|
- <fly-img style="float: left;padding-top: 10px" :src="item" :del="!value.disabled"
|
|
|
- @close="insideData[key].splice(index,1)"/>
|
|
|
- </div>
|
|
|
- </div> -->
|
|
|
-
|
|
|
+ <el-upload
|
|
|
+ v-else-if="value.type === 'uploads'"
|
|
|
+ class="upload-demo"
|
|
|
+ action="/api/service-file/uploadFile"
|
|
|
+ :on-preview="handlePreview"
|
|
|
+ :on-remove="handleRemove"
|
|
|
+ :before-remove="beforeRemove"
|
|
|
+ :limit="6"
|
|
|
+ :on-exceed="handleExceed"
|
|
|
+ :headers="uploadHeader"
|
|
|
+ :on-success="(response, file, fileList)=>uploadSuccess(response, file, fileList,key)"
|
|
|
+ v-model="insideData[key]"
|
|
|
+ :file-list="fileList">
|
|
|
+ <el-button size="small" type="primary">点击上传</el-button>
|
|
|
+ <div slot="tip" v-if="value.tip" class="el-upload__tip">{{value.tip}}</div>
|
|
|
+ </el-upload>
|
|
|
+
|
|
|
+ <el-cascader
|
|
|
+ v-model="insideData[key]"
|
|
|
+ v-else-if="value.type === 'cascader'"
|
|
|
+ :options="value.data"
|
|
|
+ ></el-cascader>
|
|
|
<!--
|
|
|
插槽:
|
|
|
slot: 插槽命名
|
|
@@ -170,6 +166,7 @@
|
|
|
</template>
|
|
|
-->
|
|
|
<slot v-else :name="key" />
|
|
|
+
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -212,6 +209,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+ import { getToken } from "@/util/auth";
|
|
|
export default {
|
|
|
name: 'test',
|
|
|
props: {
|
|
@@ -265,6 +263,11 @@ export default {
|
|
|
insideData: {}, // 内部数据
|
|
|
dateRangeData: [], // 时间段
|
|
|
fileData: [], // 文件路径数组
|
|
|
+ fileList:[],
|
|
|
+ uploadHeader:{
|
|
|
+ Authorization: 'Basic c2FiZXI6c2FiZXJfc2VjcmV0',
|
|
|
+ 'Blade-Auth':'bearer ' + getToken()
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
watch: {
|
|
@@ -284,6 +287,29 @@ export default {
|
|
|
},
|
|
|
},
|
|
|
methods: {
|
|
|
+ uploadSuccess(response, file, fileList,key){
|
|
|
+ this.insideData[key] = []
|
|
|
+ for (let i = 0; i < fileList.length; i++) {
|
|
|
+ const element = fileList[i];
|
|
|
+ this.insideData[key].push(element.response.data)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleRemove(file, fileList) {
|
|
|
+ this.insideData[key] = []
|
|
|
+ for (let i = 0; i < fileList.length; i++) {
|
|
|
+ const element = fileList[i];
|
|
|
+ this.insideData[key].push(element.response.data)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handlePreview(file) {
|
|
|
+ console.log(file);
|
|
|
+ },
|
|
|
+ handleExceed(files, fileList) {
|
|
|
+ this.$message.warning(`当前限制选择 6 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
|
|
|
+ },
|
|
|
+ beforeRemove(file, fileList) {
|
|
|
+ return this.$confirm(`确定移除 ${ file.name }?`);
|
|
|
+ },
|
|
|
fn(val, _fn) {
|
|
|
_fn(val)
|
|
|
},
|