mp:修复 WxMaterialSelect 组件的音乐 tab,无法选择图片素材报错

This commit is contained in:
YunaiV 2023-01-15 19:09:13 +08:00
parent 0499226c3d
commit 3654afedcc
2 changed files with 437 additions and 471 deletions

View File

@ -137,7 +137,7 @@
</el-row>
</div>
<el-dialog title="选择图文" :visible.sync="dialogNewsVisible" width="90%" append-to-body>
<WxMaterialSelect :objData="objData" @selectMaterial="selectMaterial" :newsType="newsType"></WxMaterialSelect>
<wx-material-select :objData="objData" @selectMaterial="selectMaterial" :newsType="newsType" />
</el-dialog>
</el-row>
</el-tab-pane>
@ -158,7 +158,7 @@
</div>
</div>
<el-dialog title="选择图片" :visible.sync="dialogThumbVisible" width="80%" append-to-body>
<wx-material-select :objData="{type:'image'}" @selectMaterial="selectMaterial" />
<wx-material-select :objData="{type:'image', accountId: objData.accountId}" @selectMaterial="selectMaterial" />
</el-dialog>
</el-col>
<el-col :span="18">
@ -176,13 +176,13 @@
</template>
<script>
// import { getPage, getMaterialVideo } from '@/api/wxmp/wxmaterial'
import {getAccessToken} from '@/utils/auth'
import WxNews from '@/views/mp/components/wx-news/main.vue'
import WxMaterialSelect from '@/views/mp/components/wx-material-select/main.vue'
import WxVoicePlayer from '@/views/mp/components/wx-voice-play/main.vue';
import WxVideoPlayer from '@/views/mp/components/wx-video-play/main.vue';
import { getAccessToken } from '@/utils/auth'
export default {
name: "wxReplySelect",
components: {
@ -206,15 +206,6 @@
tempPlayerObj: {
type: '2'
},
tableData: [],
page: {
total: 0, //
currentPage: 1, //
pageSize: 20, //
ascs:[],//
descs:[]//
},
tableLoading: false,
tempObj: new Map().set( // tab
this.objData.type, //
@ -259,7 +250,6 @@
return true;
},
beforeVoiceUpload(file){
this.tableLoading = true
//
const isType = file.type === 'audio/mp3'
|| file.type === 'audio/mpeg'
@ -464,25 +454,6 @@
//
this.tempObj.set(this.objData.type, Object.assign({}, this.objData));
},
getPage(page, params) {
this.tableLoading = true
// getPage(Object.assign({
// current: page.currentPage,
// size: page.pageSize,
// type:this.objData.type
// }, params)).then(response => {
// this.tableData = response.data.items
// this.page.total = response.data.totalCount
// this.page.currentPage = page.currentPage
// this.page.pageSize = page.pageSize
// this.tableLoading = false
// })
},
sizeChange(val) {
this.page.currentPage = 1
this.page.pageSize = val
this.getPage(this.page)
},
/**
* 输入时缓存每次 objData tempObj
*

View File

@ -116,7 +116,7 @@ SOFTWARE.
<div class="select-item" v-if="tempObj && tempObj.content && tempObj.content.articles">
<WxNews :objData="tempObj.content.articles"></WxNews>
<el-row class="ope-row">
<el-button type="danger" icon="el-icon-delete" circle @click="deleteTempObj"></el-button>
<el-button type="danger" icon="el-icon-delete" circle @click="deleteTempObj" />
</el-row>
</div>
<div v-if="!tempObj.content || !tempObj.content.articles">
@ -183,12 +183,10 @@ export default {
nameMaxLength: 0, // 1 4 2 7
showConfigureContent: true, //
hackResetWxReplySelect: false, // WxReplySelect
tempObj: {}, //
tempSelfObj: { // tempObjmenu
},
visible2: false, // ""
tableData:[], //,
dialogNewsVisible: false, //
menuOptions: [{
value: 'view',
label: '跳转网页'
@ -220,7 +218,6 @@ export default {
value: 'location_select',
label: '选择地理位置'
}],
dialogNewsVisible: false,
//
accounts: [],
@ -357,13 +354,13 @@ export default {
if (!item.children || item.children.length <= 0) {
this.$set( item, 'children',[])
this.$delete( item, 'type')
this.$delete( item, 'menuKey')
this.$delete( item, 'miniProgramAppId')
this.$delete( item, 'miniProgramPagePath')
this.$delete( item, 'url')
this.$delete( item, 'reply')
// TODO
this.$delete( item, 'key')
this.$delete( item, 'article_id')
this.$delete( item, 'textContent')
this.showConfigureContent = false
@ -470,14 +467,7 @@ export default {
}
return result;
},
// TODO
deleteTempObj(){
this.$delete(this.tempObj,'repName')
this.$delete(this.tempObj,'repUrl')
this.$delete(this.tempObj,'content')
},
// ======================== ========================
openMaterial() {
this.dialogNewsVisible = true
},
@ -495,6 +485,11 @@ export default {
item.content.articles = item.content.articles.slice(0,1)
this.tempObj.content = item.content
},
deleteTempObj() {
this.$delete(this.tempObj,'repName')
this.$delete(this.tempObj,'repUrl')
this.$delete(this.tempObj,'content')
},
},
}
</script>