diff --git a/src/components/MDinput/index.vue b/src/components/MDinput/index.vue index 6d9d5e8e4c6c42c611edc79d040303f64097634c..731311f73984697922e1e94b5f2b6a2750b362ac 100644 --- a/src/components/MDinput/index.vue +++ b/src/components/MDinput/index.vue @@ -71,6 +71,11 @@ export default { } } }, + watch: { + value(newValue) { + this.currentValue = newValue + } + }, data() { return { currentValue: this.value, diff --git a/src/mock/article.js b/src/mock/article.js index f6ed175111d43f4cb952ba7a41e6a942bd337a47..a42030ed321cbe3a889c23bbcc594a0dd72baa65 100644 --- a/src/mock/article.js +++ b/src/mock/article.js @@ -50,7 +50,7 @@ export default { author: { key: 'mockPan' }, source_name: '原创作者', category_item: [{ key: 'global', name: 'å…¨çƒ' }], - comment_disabled: false, + comment_disabled: true, content: '<p>我是测试数æ®æˆ‘是测试数æ®</p><p><img class="wscnph" src="https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943" data-wscntype="image" data-wscnh="300" data-wscnw="400" data-mce-src="https://wpimg.wallstcn.com/4c69009c-0fd4-4153-b112-6cb53d1cf943"></p>"', content_short: '我是测试数æ®', display_time: +new Date(), @@ -59,6 +59,6 @@ export default { source_uri: 'https://github.com/PanJiaChen/vue-element-admin', status: 'published', tags: [], - title: '' + title: 'vue-element-admin' }) } diff --git a/src/views/example/form.vue b/src/views/example/form.vue index 9a09c8462f7f99e1fe2c4c2fe2108c91177a7280..c0a0a925ffc6e48bac4b78f53fb9320c84eb8a53 100644 --- a/src/views/example/form.vue +++ b/src/views/example/form.vue @@ -4,27 +4,28 @@ <sticky :className="'sub-navbar '+postForm.status"> <template v-if="fetchSuccess"> - <div style="display:inline-block"> - <el-dropdown trigger="click"> - <router-link style="margin-right:15px;" v-show='isEdit' :to="{ path:'create'}"> - <el-button type="info">创建form</el-button> - </router-link> - <el-button>{{!postForm.comment_disabled?'评论已打开':'评论已关é—'}}<i class="el-icon-caret-bottom el-icon--right"></i></el-button> - <el-dropdown-menu class="no-padding no-hover" slot="dropdown"> - <el-dropdown-item> - <el-radio-group style="padding: 10px;" v-model="postForm.comment_disabled"> - <el-radio :label="true">å…³é—评论</el-radio> - <el-radio :label="false">打开评论</el-radio> - </el-radio-group> - </el-dropdown-item> - </el-dropdown-menu> - </el-dropdown> - </div> + <router-link style="margin-right:15px;" v-show='isEdit' :to="{ path:'create'}"> + <el-button type="info">创建form</el-button> + </router-link> <el-dropdown trigger="click"> - <el-button> - å¹³å°<i class="el-icon-caret-bottom el-icon--right"></i> + <el-button>{{!postForm.comment_disabled?'评论已打开':'评论已关é—'}} + <i class="el-icon-caret-bottom el-icon--right"></i> + </el-button> + <el-dropdown-menu class="no-padding" slot="dropdown"> + <el-dropdown-item> + <el-radio-group style="padding: 10px;" v-model="postForm.comment_disabled"> + <el-radio :label="true">å…³é—评论</el-radio> + <el-radio :label="false">打开评论</el-radio> + </el-radio-group> + </el-dropdown-item> + </el-dropdown-menu> + </el-dropdown> + + <el-dropdown trigger="click"> + <el-button>å¹³å° + <i class="el-icon-caret-bottom el-icon--right"></i> </el-button> <el-dropdown-menu class="no-border" slot="dropdown"> <el-checkbox-group v-model="postForm.platforms" style="padding: 5px 15px;"> @@ -37,7 +38,8 @@ <el-dropdown trigger="click"> <el-button> - 外链<i class="el-icon-caret-bottom el-icon--right"></i> + 外链 + <i class="el-icon-caret-bottom el-icon--right"></i> </el-button> <el-dropdown-menu class="no-padding no-border" style="width:300px" slot="dropdown"> <el-form-item label-width="0px" style="margin-bottom: 0px" prop="source_uri"> @@ -130,6 +132,19 @@ import { validateURL } from '@/utils/validate' import { fetchArticle } from '@/api/article' import { userSearch } from '@/api/remoteSearch' +const defaultForm = { + title: '', // æ–‡ç« é¢˜ç›® + content: '', // æ–‡ç« å†…å®¹ + content_short: '', // æ–‡ç« æ‘˜è¦ + source_uri: '', // æ–‡ç« å¤–é“¾ + image_uri: '', // æ–‡ç« å›¾ç‰‡ + source_name: '', // æ–‡ç« å¤–éƒ¨ä½œè€… + display_time: undefined, // å‰å°å±•ç¤ºæ—¶é—´ + id: undefined, + platforms: ['a-platform'], + comment_disabled: false +} + export default { name: 'articleDetail', components: { Tinymce, MDinput, Upload, Multiselect, Sticky }, @@ -161,24 +176,14 @@ export default { } } return { - postForm: { - title: '', // æ–‡ç« é¢˜ç›® - content: '', // æ–‡ç« å†…å®¹ - content_short: '', // æ–‡ç« æ‘˜è¦ - source_uri: '', // æ–‡ç« å¤–é“¾ - image_uri: '', // æ–‡ç« å›¾ç‰‡ - source_name: '', // æ–‡ç« å¤–éƒ¨ä½œè€… - display_time: undefined, // å‰å°å±•ç¤ºæ—¶é—´ - id: undefined, - platforms: ['a-platform'] - }, + postForm: Object.assign({}, defaultForm), fetchSuccess: true, loading: false, userLIstOptions: [], platformsOptions: [ - { key: 'a-platform', name: 'a-platform' }, - { key: 'b-platform', name: 'b-platform' }, - { key: 'c-platform', name: 'c-platform' } + { key: 'a-platform', name: 'a-platform' }, + { key: 'b-platform', name: 'b-platform' }, + { key: 'c-platform', name: 'c-platform' } ], rules: { image_uri: [{ validator: validateRequire }], @@ -202,6 +207,16 @@ export default { this.fetchData() } }, + watch: { + // 如果路由有å˜åŒ–,会å†æ¬¡æ‰§è¡Œè¯¥æ–¹æ³• + '$route'(to, from) { + if (this.isEdit) { + this.fetchData() + } else { + this.postForm = defaultForm + } + } + }, methods: { fetchData() { fetchArticle().then(response => {