zhoujump 1 месяц назад
Родитель
Сommit
6d437c6bbd
2 измененных файлов с 20 добавлено и 14 удалено
  1. 13 10
      src/views/components/expoPopover.vue
  2. 7 4
      src/views/user/form.vue

+ 13 - 10
src/views/components/expoPopover.vue

@@ -2,18 +2,18 @@
 import Vue from 'vue'
 import { getMyExpoInfo } from '@/api/expo'
 export default Vue.extend({
-  name: "expoPopover",
+  name: 'ExpoPopover',
+  props: {
+    expoId: String,
+    placement: String,
+    trigger: String
+  },
   data() {
     return {
       popover_data: {},
       ossUrl: process.env.VUE_APP_OSS_DOMAIN
     }
   },
-  props: {
-    expoId: String,
-    placement: String,
-    trigger: String,
-  },
   methods: {
     goto(url) {
       window.open(url, '_blank')
@@ -23,11 +23,14 @@ export default Vue.extend({
         this.popover_data = res.data
         this.popover_data.images = JSON.parse(res.data.images)
         this.popover_data.social_links = JSON.parse(res.data.social_links)
+        if (this.popover_data.social_links.facebook === '' || this.popover_data.social_links.twitter === '' || this.popover_data.social_links.linkedin === '') {
+          this.popover_data.social_links = false
+        }
       })
     },
     copyUrl() {
-      let rootPath = window.location.origin
-      navigator.clipboard.writeText(rootPath+'/register/'+this.popover_data.urla)
+      const rootPath = window.location.origin
+      navigator.clipboard.writeText(rootPath + '/register/' + this.popover_data.urla)
       this.$message.success('复制成功')
     }
   }
@@ -39,7 +42,7 @@ export default Vue.extend({
     <div class="expo-info">
       <div class="cover loading">
         <img v-if="popover_data.images" :src="ossUrl+popover_data.images[0]">
-        <div v-permission="'exhibitor.copyLink'" v-if="popover_data.form_template_id && popover_data.urla" @click="copyUrl()" class="button">复制表单地址</div>
+        <div v-if="popover_data.form_template_id && popover_data.urla" v-permission="'exhibitor.copyLink'" class="button" @click="copyUrl()">复制表单地址</div>
       </div>
       <div class="info-body">
         <div class="avatar-name">
@@ -83,7 +86,7 @@ export default Vue.extend({
       </div>
     </div>
     <span slot="reference" class="button">
-      <slot></slot>
+      <slot />
     </span>
   </el-popover>
 </template>

+ 7 - 4
src/views/user/form.vue

@@ -7,6 +7,9 @@ import countryCode from '@/lib/countryCode.json'
 import login from '@/views/login/index.vue'
 export default Vue.extend({
   name: 'Index',
+  components: {
+    expoHead
+  },
   data() {
     return {
       from_data: [],
@@ -27,9 +30,6 @@ export default Vue.extend({
       isOk: false
     }
   },
-  components: {
-    expoHead
-  },
   computed: {
     user() { return this.$store.state.user.user },
     token() { return this.$store.state.user.token }
@@ -49,6 +49,9 @@ export default Vue.extend({
           this.from_data = res.data
           this.from_data.images = JSON.parse(res.data.images)
           this.from_data.social_links = JSON.parse(res.data.social_links)
+          if (this.from_data.social_links.facebook === '' || this.from_data.social_links.twitter === '' || this.from_data.social_links.linkedin === '') {
+            this.from_data.social_links = false
+          }
           this.from_data.form_fields.forEach(item => {
             if (item.field_type === 'checkbox') {
               this.$set(item, 'value', [])
@@ -200,7 +203,7 @@ export default Vue.extend({
     <div class="info">此链接无效,请向管理员咨询。</div>
   </div>
   <div v-else class="body">
-    <expo-head :popover_data="from_data"></expo-head>
+    <expo-head :popover_data="from_data" />
     <div class="form">
       <div v-if="isOk" class="form-body ok">
         <div class="icon el-icon-success" />