yujialong 11 months ago
parent 5abfd1dc32
commit 71dd3009e2
  1. 4
      public/styles/css/editor.css
  2. 93
      src/components/modules/link.vue
  3. 5
      src/components/modules/module.vue

@ -100,7 +100,9 @@
}
.tiny-wrap .people .pic {
max-width: 400px;
margin-right: 50px;
}
.tiny-wrap .people .texts {
margin-left: 50px;
}
.tiny-wrap .people h6 {
font-size: 24px;

@ -1,9 +1,16 @@
<template>
<!-- 设置链接 -->
<div>
<el-dialog title="设置链接地址" :visible.sync="visible" width="500px" :close-on-click-modal="false" :before-close="close">
<el-form :model="data" class="model" label-width="120px">
<el-form-item prop="connectionType" label="连接类型">
<el-dialog title="设置链接地址"
:visible.sync="visible"
width="500px"
:close-on-click-modal="false"
:before-close="close">
<el-form :model="data"
class="model"
label-width="120px">
<el-form-item prop="connectionType"
label="连接类型">
<el-radio-group v-model="data.connectionType">
<!-- <el-radio :label="0"></el-radio> -->
<el-radio :label="1">站内链接</el-radio>
@ -12,9 +19,8 @@
</el-radio-group>
</el-form-item>
<template v-if="data.connectionType === 1">
<el-form-item label="站内链接">
<el-cascader
ref="column"
<el-form-item label="栏目">
<el-cascader ref="column"
v-model="data.columnId"
:options="columns"
:props="columnProps"
@ -22,8 +28,7 @@
</el-form-item>
<el-form-item label="文章">
<el-select v-model="data.articleId">
<el-option
v-for="item in articles"
<el-option v-for="item in articles"
:key="item.id"
:label="item.title"
:value="item.id">
@ -31,18 +36,19 @@
</el-select>
</el-form-item>
</template>
<el-form-item v-show="data.connectionType === 2" prop="linkAddress" label="站外链接">
<el-input
placeholder="请输入站外链接"
<el-form-item v-show="data.connectionType === 2"
prop="linkAddress"
label="站外链接">
<el-input placeholder="请输入站外链接"
v-model.trim="data.linkAddress"
clearable
></el-input>
clearable></el-input>
</el-form-item>
<template v-if="data.connectionType === 3">
<el-form-item prop="site" label="站点选择">
<el-select v-model="data.site" @change="getOtherColumn">
<el-option
v-for="item in sites"
<el-form-item prop="site"
label="站点选择">
<el-select v-model="data.site"
@change="getOtherColumn">
<el-option v-for="item in sites"
:key="item.id"
:label="item.siteName"
:value="item.id">
@ -50,8 +56,7 @@
</el-select>
</el-form-item>
<el-form-item label="栏目">
<el-cascader
ref="otherColumn"
<el-cascader ref="otherColumn"
v-model="data.otherColumnId"
:options="otherColumns"
:props="columnProps"
@ -59,8 +64,7 @@
</el-form-item>
<el-form-item label="文章">
<el-select v-model="data.otherArticleId">
<el-option
v-for="item in articles"
<el-option v-for="item in articles"
:key="item.id"
:label="item.title"
:value="item.id">
@ -68,17 +72,19 @@
</el-select>
</el-form-item>
</template>
<el-form-item prop="isOpen" label="新窗口打开">
<el-switch
v-model="data.isOpen"
<el-form-item prop="isOpen"
label="新窗口打开">
<el-switch v-model="data.isOpen"
:active-value="1"
:inactive-value="0">
</el-switch>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<span slot="footer"
class="dialog-footer">
<el-button @click="$emit('update:visible', false)">取消</el-button>
<el-button type="primary" @click="linkSubmit">确定</el-button>
<el-button type="primary"
@click="linkSubmit">确定</el-button>
</span>
</el-dialog>
</div>
@ -95,7 +101,7 @@ export default {
required: true
}
},
data() {
data () {
return {
site: this.$store.state.content.site,
sites: [],
@ -110,7 +116,7 @@ export default {
};
},
watch: {
visible(open) {
visible (open) {
//
if (open) {
this.data.connectionType !== 2 && this.getArticle()
@ -118,40 +124,40 @@ export default {
}
}
},
mounted() {
mounted () {
this.getList()
this.getSite()
},
methods: {
//
getList() {
getList () {
this.$post(this.api.listWithTree, {
siteId: this.site.id,
columnName: '',
templateId: '',
typeId : '',
typeId: '',
isSort: 1
}).then(({ data }) => {
this.columns = data
this.data.connectionType !== 2 && this.getArticle()
}).catch(err => {})
}).catch(err => { })
},
// disabled
handleId(list) {
handleId (list) {
list.forEach(e => {
if (e.id == this.id) e.disabled = true
e.children.length ? this.handleId(e.children) : delete e.children
})
},
//
columnChange() {
columnChange () {
this.data.articleId = ''
this.getArticle()
},
//
getArticle() {
getArticle () {
// /
const id = this.data.connectionType === 1 ? this.data.columnId[this.data.columnId.length - 1] : this.data.otherColumnId[this.data.otherColumnId.length - 1]
id && this.$post(this.api.queryArticle, {
@ -163,42 +169,41 @@ export default {
isDisable: 0
}).then(({ data }) => {
this.articles = data.records.filter(e => e.isRelease) //
}).catch(err => {})
}).catch(err => { })
},
//
getSite() {
getSite () {
this.$post(this.api.site, {
page: 1,
limit: 1000,
siteName: ''
}).then(({ data }) => {
this.sites = data.records
}).catch(e => {})
}).catch(e => { })
},
//
getOtherColumn() {
getOtherColumn () {
this.data.site && this.$post(this.api.listWithTree, {
siteId: this.data.site,
columnName: '',
templateId: '',
typeId : '',
typeId: '',
isSort: 1
}).then(({ data }) => {
this.otherColumns = data
}).catch(err => {})
}).catch(err => { })
},
close() {
close () {
this.$emit('update:visible', false)
},
//
linkSubmit() {
linkSubmit () {
this.$emit('linkSubmit')
}
}
};
</script>
<style lang="scss" scoped>
</style>

@ -122,7 +122,12 @@
:file-list="fileList"
:headers="headers"
:action="api.upload">
<el-button>上传视频</el-button>
<div slot="tip"
class="el-upload__tip">
<p>请上传大小1G以内的视频</p>
</div>
</el-upload>
<!-- 图片视频都可上传 -->
<el-upload v-if="item.type === 'media'"

Loading…
Cancel
Save