Procházet zdrojové kódy

基础组件更新,增加图标,完善组件列表数据,优化逻辑

李文 před 4 roky
rodič
revize
0e17e7b2ed
66 změnil soubory, kde provedl 267 přidání a 77 odebrání
  1. binární
      src/assets/img/jczj/icon-apiwg.png
  2. binární
      src/assets/img/jczj/icon-bzdlys.png
  3. binární
      src/assets/img/jczj/icon-bzdxsj.png
  4. binární
      src/assets/img/jczj/icon-bzqxyx.png
  5. binární
      src/assets/img/jczj/icon-bzslwp.png
  6. binární
      src/assets/img/jczj/icon-bzswmx.png
  7. binární
      src/assets/img/jczj/icon-bzyxsj.png
  8. binární
      src/assets/img/jczj/icon-clda.png
  9. binární
      src/assets/img/jczj/icon-czrz.png
  10. binární
      src/assets/img/jczj/icon-dawh.png
  11. binární
      src/assets/img/jczj/icon-dazdy.png
  12. binární
      src/assets/img/jczj/icon-dddlfw.png
  13. binární
      src/assets/img/jczj/icon-dpda.png
  14. binární
      src/assets/img/jczj/icon-dwjx.png
  15. binární
      src/assets/img/jczj/icon-fbsyykf.png
  16. binární
      src/assets/img/jczj/icon-ffdy.png
  17. binární
      src/assets/img/jczj/icon-fzfw.png
  18. binární
      src/assets/img/jczj/icon-jrclyq.png
  19. binární
      src/assets/img/jczj/icon-jsmxkj.png
  20. binární
      src/assets/img/jczj/icon-kshfxtyxt.png
  21. binární
      src/assets/img/jczj/icon-lcbdfw.png
  22. binární
      src/assets/img/jczj/icon-ljskf.png
  23. binární
      src/assets/img/jczj/icon-mxgl.png
  24. binární
      src/assets/img/jczj/icon-qjdlxx.png
  25. binární
      src/assets/img/jczj/icon-qyda.png
  26. binární
      src/assets/img/jczj/icon-ryda.png
  27. binární
      src/assets/img/jczj/icon-sjda.png
  28. binární
      src/assets/img/jczj/icon-sjgd.png
  29. binární
      src/assets/img/jczj/icon-sjkshfw.png
  30. binární
      src/assets/img/jczj/icon-sjmf.png
  31. binární
      src/assets/img/jczj/icon-sjzz.png
  32. binární
      src/assets/img/jczj/icon-snwyth.png
  33. binární
      src/assets/img/jczj/icon-sslxr.png
  34. binární
      src/assets/img/jczj/icon-swdcxr.png
  35. binární
      src/assets/img/jczj/icon-swdxfx.png
  36. binární
      src/assets/img/jczj/icon-swsjct.png
  37. binární
      src/assets/img/jczj/icon-swsjjz.png
  38. binární
      src/assets/img/jczj/icon-swtxmn.png
  39. binární
      src/assets/img/jczj/icon-tyqxrz.png
  40. binární
      src/assets/img/jczj/icon-tysjfw.png
  41. binární
      src/assets/img/jczj/icon-tyyhfw.png
  42. binární
      src/assets/img/jczj/icon-wbfx.png
  43. binární
      src/assets/img/jczj/icon-wfs.png
  44. binární
      src/assets/img/jczj/icon-wms.png
  45. binární
      src/assets/img/jczj/icon-wmts.png
  46. binární
      src/assets/img/jczj/icon-xtrz.png
  47. binární
      src/assets/img/jczj/icon-xtxtgj.png
  48. binární
      src/assets/img/jczj/icon-xxdl.png
  49. binární
      src/assets/img/jczj/icon-ycrz.png
  50. binární
      src/assets/img/jczj/icon-yhjsgl.png
  51. binární
      src/assets/img/jczj/icon-yhqxgl.png
  52. binární
      src/assets/img/jczj/icon-yhrz.png
  53. binární
      src/assets/img/jczj/icon-yhxxrz.png
  54. binární
      src/assets/img/jczj/icon-yzsff.png
  55. binární
      src/assets/img/jczj/icon-zhxss.png
  56. binární
      src/assets/img/jczj/icon-znbq.png
  57. binární
      src/assets/img/jczj/icon-znsb.png
  58. binární
      src/assets/img/jczj/icon-zstp.png
  59. binární
      src/assets/img/jczj/icon-zxfb.png
  60. binární
      src/assets/img/jczj/icon-zzjgrz.png
  61. 34 3
      src/assets/scss/smp.scss
  62. 12 2
      src/router/index.js
  63. 1 3
      src/views/main/main-content.vue
  64. 152 60
      src/views/modules/demo/basicComponent/basic-com.vue
  65. 33 5
      src/views/modules/demo/basicComponent/com-third-menu.vue
  66. 35 4
      src/views/modules/demo/basicComponent/pubuliu.vue

binární
src/assets/img/jczj/icon-apiwg.png


binární
src/assets/img/jczj/icon-bzdlys.png


binární
src/assets/img/jczj/icon-bzdxsj.png


binární
src/assets/img/jczj/icon-bzqxyx.png


binární
src/assets/img/jczj/icon-bzslwp.png


binární
src/assets/img/jczj/icon-bzswmx.png


binární
src/assets/img/jczj/icon-bzyxsj.png


binární
src/assets/img/jczj/icon-clda.png


binární
src/assets/img/jczj/icon-czrz.png


binární
src/assets/img/jczj/icon-dawh.png


binární
src/assets/img/jczj/icon-dazdy.png


binární
src/assets/img/jczj/icon-dddlfw.png


binární
src/assets/img/jczj/icon-dpda.png


binární
src/assets/img/jczj/icon-dwjx.png


binární
src/assets/img/jczj/icon-fbsyykf.png


binární
src/assets/img/jczj/icon-ffdy.png


binární
src/assets/img/jczj/icon-fzfw.png


binární
src/assets/img/jczj/icon-jrclyq.png


binární
src/assets/img/jczj/icon-jsmxkj.png


binární
src/assets/img/jczj/icon-kshfxtyxt.png


binární
src/assets/img/jczj/icon-lcbdfw.png


binární
src/assets/img/jczj/icon-ljskf.png


binární
src/assets/img/jczj/icon-mxgl.png


binární
src/assets/img/jczj/icon-qjdlxx.png


binární
src/assets/img/jczj/icon-qyda.png


binární
src/assets/img/jczj/icon-ryda.png


binární
src/assets/img/jczj/icon-sjda.png


binární
src/assets/img/jczj/icon-sjgd.png


binární
src/assets/img/jczj/icon-sjkshfw.png


binární
src/assets/img/jczj/icon-sjmf.png


binární
src/assets/img/jczj/icon-sjzz.png


binární
src/assets/img/jczj/icon-snwyth.png


binární
src/assets/img/jczj/icon-sslxr.png


binární
src/assets/img/jczj/icon-swdcxr.png


binární
src/assets/img/jczj/icon-swdxfx.png


binární
src/assets/img/jczj/icon-swsjct.png


binární
src/assets/img/jczj/icon-swsjjz.png


binární
src/assets/img/jczj/icon-swtxmn.png


binární
src/assets/img/jczj/icon-tyqxrz.png


binární
src/assets/img/jczj/icon-tysjfw.png


binární
src/assets/img/jczj/icon-tyyhfw.png


binární
src/assets/img/jczj/icon-wbfx.png


binární
src/assets/img/jczj/icon-wfs.png


binární
src/assets/img/jczj/icon-wms.png


binární
src/assets/img/jczj/icon-wmts.png


binární
src/assets/img/jczj/icon-xtrz.png


binární
src/assets/img/jczj/icon-xtxtgj.png


binární
src/assets/img/jczj/icon-xxdl.png


binární
src/assets/img/jczj/icon-ycrz.png


binární
src/assets/img/jczj/icon-yhjsgl.png


binární
src/assets/img/jczj/icon-yhqxgl.png


binární
src/assets/img/jczj/icon-yhrz.png


binární
src/assets/img/jczj/icon-yhxxrz.png


binární
src/assets/img/jczj/icon-yzsff.png


binární
src/assets/img/jczj/icon-zhxss.png


binární
src/assets/img/jczj/icon-znbq.png


binární
src/assets/img/jczj/icon-znsb.png


binární
src/assets/img/jczj/icon-zstp.png


binární
src/assets/img/jczj/icon-zxfb.png


binární
src/assets/img/jczj/icon-zzjgrz.png


+ 34 - 3
src/assets/scss/smp.scss

@@ -1835,17 +1835,30 @@ html,body{
     padding:0;
     padding:0;
   }
   }
   .csm-item{
   .csm-item{
-    background-color: #f00;
+    background-color: #fafafa;
+    // background-color: #ff0;
     @include smp-radius-normal();
     @include smp-radius-normal();
     height:68px;
     height:68px;
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     cursor: pointer;
     cursor: pointer;
+    position:relative;
+    a{
+      text-decoration: none;
+    }
+    .el-icon-arrow-right{
+      position: absolute;
+      width:12px!important;
+      height:12px;
+      font-size:12px;
+      top:28px;
+      right:0px;
+    }
     .csm-icon{
     .csm-icon{
       width:38px;
       width:38px;
       height:38px;
       height:38px;
       border-radius:100px;
       border-radius:100px;
-      background-color: #ff0;
+      // background-color: #ff0;
       flex-shrink: 0;
       flex-shrink: 0;
       margin:0 6.25% 0 9.375%;
       margin:0 6.25% 0 9.375%;
     }
     }
@@ -1857,12 +1870,16 @@ html,body{
       max-height:60px;
       max-height:60px;
       overflow:hidden;
       overflow:hidden;
       padding:0 8% 0 0;
       padding:0 8% 0 0;
-      white-space:pre-wrap;
+      // word-wrap: break-all;
+      word-break: break-all;
+      white-space: pre-wrap;
+      
     }
     }
   }
   }
 }
 }
 .csm-zk-menu{
 .csm-zk-menu{
   width:auto!important;
   width:auto!important;
+  border-right:none;
   .el-submenu__title{
   .el-submenu__title{
     padding:0!important;
     padding:0!important;
     height:auto;
     height:auto;
@@ -1876,7 +1893,21 @@ html,body{
     font-size:30px;
     font-size:30px;
     padding:0 5px 0 8px;
     padding:0 5px 0 8px;
   }
   }
+  .menuItemA{
+    flex:1;
+    text-decoration: none;
+    display: flex;
+    align-items: center;
+  }
 }
 }
+$list: apiwg bzdlys bzdxsj bzqxyx bzslwp bzswmx bzyxsj clda czrz dawh dazdy dddlfw dpda dwjx fbsyykf ffdy fzfw jrclyq jsmxkj kshfxtyxt lcbdfw ljskf mxgl qjdlxx qyda ryda sjda sjgd sjkshfw sjmf sjzz snwyth sslxr swdcxr swdxfx swsjct swsjjz swtxmn tyqxrz tysjfw wbfx wfs wms wmts xtrz xtxtgj xxdl ycrz yhjsgl yhqxgl yhrz yhxxrz yzsff zhxss znbq znsb zstp zxfb zzjgrz tyyhfw; //$list 就是一个列表
+@each $name in $list {
+    .jczj-icon-#{$name} {
+        background: url("~@/assets/img/jczj/icon-#{$name}.png") no-repeat 0 0;
+        background-size: 100% 100%;
+    }
+}
+
 
 
 // 通知列表
 // 通知列表
 .notice-pop{
 .notice-pop{

+ 12 - 2
src/router/index.js

@@ -68,8 +68,8 @@ router.beforeEach((to, from, next) => {
       Vue.prototype.$message.error(res.msg)
       Vue.prototype.$message.error(res.msg)
       return next({name: 'login'})
       return next({name: 'login'})
     }
     }
-    let firstPath = getParent(res.list)
-    console.log(res.list, firstPath)
+    let toObj = findPathInHttpMenu(to, res.list)
+    let firstPath = toObj ? toObj.path : getParent(res.list)
     // console.log(firstPath)
     // console.log(firstPath)
     // if (!firstPath) {
     // if (!firstPath) {
     //   let homePage = {
     //   let homePage = {
@@ -93,6 +93,16 @@ router.beforeEach((to, from, next) => {
   })
   })
 })
 })
 
 
+function findPathInHttpMenu (to, list) {
+  let obj = ''
+  list.forEach((e) => {
+    if ('/' + e.path === to.path) {
+      obj = e
+    }
+  })
+  return obj
+}
+
 function getParent (list) {
 function getParent (list) {
   let arr = list.filter((e) => {
   let arr = list.filter((e) => {
     if (!e.path) {
     if (!e.path) {

+ 1 - 3
src/views/main/main-content.vue

@@ -1,9 +1,7 @@
 <template>
 <template>
   <main class="smp-content" :class="{'isIframe':isIframe}">
   <main class="smp-content" :class="{'isIframe':isIframe}">
     <iframe v-if="isIframe" :src="iframeURL" width="100%" height="100%" frameborder="0" scrolling="yes"></iframe>
     <iframe v-if="isIframe" :src="iframeURL" width="100%" height="100%" frameborder="0" scrolling="yes"></iframe>
-    <keep-alive v-else>
-      <router-view />
-    </keep-alive>
+    <router-view v-else />
   </main>
   </main>
 </template>
 </template>
 
 

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 152 - 60
src/views/modules/demo/basicComponent/basic-com.vue


+ 33 - 5
src/views/modules/demo/basicComponent/com-third-menu.vue

@@ -3,8 +3,9 @@
     <template slot="title">
     <template slot="title">
       <template v-if="menuItem.lv===1" class="cs">
       <template v-if="menuItem.lv===1" class="cs">
         <div class="csm-item">
         <div class="csm-item">
-          <i class="csm-icon"></i>
+          <i class="csm-icon" :class="menuItem.icon"></i>
           <div class="csm-name" :title="menuItem.name">{{menuItem.name}}</div>
           <div class="csm-name" :title="menuItem.name">{{menuItem.name}}</div>
+          <i class="el-icon-arrow-right"></i>
         </div>
         </div>
       </template>
       </template>
       <template v-if="menuItem.lv>=2">
       <template v-if="menuItem.lv>=2">
@@ -16,18 +17,22 @@
     </template>
     </template>
     <com-thirdmenu v-for="item in menuItem.children" :key="item.id+'sub'" :menuItem="item"></com-thirdmenu>
     <com-thirdmenu v-for="item in menuItem.children" :key="item.id+'sub'" :menuItem="item"></com-thirdmenu>
   </el-submenu>
   </el-submenu>
-  <el-menu-item v-else :index="menuItem.id+'sub'" @click="gotoRouteHandle(menuItem)">
+  <el-menu-item v-else :index="menuItem.id+'sub'">
     <template v-if="menuItem.lv===1">
     <template v-if="menuItem.lv===1">
       <div class="csm-item">
       <div class="csm-item">
-        <i class="csm-icon"></i>
-        <div class="csm-name" :title="menuItem.name">{{menuItem.name}}</div>
+        <a class="menuItemA" :href="getHref(menuItem)" :target="getTarget(menuItem)">
+          <i class="csm-icon" :class="menuItem.icon"></i>
+          <div class="csm-name" :title="menuItem.name">{{menuItem.name}}</div>
+        </a>
       </div>
       </div>
     </template>
     </template>
     <template v-if="menuItem.lv>=2">
     <template v-if="menuItem.lv>=2">
+      <a class="menuItemA" :href="getHref(menuItem)" :target="getTarget(menuItem)">
       <em class="csm-point">&middot;</em>
       <em class="csm-point">&middot;</em>
       <span class="csm-sec-name" :title=" menuItem.name">
       <span class="csm-sec-name" :title=" menuItem.name">
         {{ menuItem.name }}
         {{ menuItem.name }}
       </span>
       </span>
+      </a>
     </template>
     </template>
   </el-menu-item>
   </el-menu-item>
 </template>
 </template>
@@ -50,11 +55,34 @@ export default {
   components: {
   components: {
     comThirdmenu
     comThirdmenu
   },
   },
+  mounted () {
+    // console.log(this.menuItem)
+  },
   methods: {
   methods: {
+    getHref (item) {
+      // console.log(item.url, window.location)
+      let host = window.location.host
+      let href = window.location.href
+      if (!item.url) {
+        return 'javascript:void(0);'
+      } else if (item.url.indexOf('http') > -1) {
+        return item.url
+      } else if (href.indexOf(host + '/#') > -1) {
+        return '/#' + item.url
+      }
+    },
+    getTarget (item) {
+      if (!item.url) {
+        return '_self'
+      } else {
+        return '_blank'
+      }
+    },
     gotoRouteHandle (item) {
     gotoRouteHandle (item) {
       console.log(item)
       console.log(item)
       if (item.url) {
       if (item.url) {
-        this.$router.push({ path: item.url })
+        // this.$router.push({ path: item.url })
+        // window.open("http://www.jb51.net")
       }
       }
     }
     }
   }
   }

+ 35 - 4
src/views/modules/demo/basicComponent/pubuliu.vue

@@ -28,25 +28,53 @@ export default {
       boxW: document.body.clientWidth // 屏幕宽度
       boxW: document.body.clientWidth // 屏幕宽度
     }
     }
   },
   },
-  computed: {},
+  watch: {
+    list () {
+      this.$nextTick(() => {
+        this.setPosition()
+      })
+    }
+  },
   created () {
   created () {
 
 
   },
   },
   mounted () {
   mounted () {
-    this.init()
+    this.windowResize()
     this.$nextTick(() => {
     this.$nextTick(() => {
-      this.setPosition()
+      this.init()
     })
     })
+    // $('.bc-wraper').on('resize', a)
+    // setTimeout(function () {
+    //   console.log('off click')
+    //   $('.bc-wraper').off('resize', a)
+    // }, 5000)
+    // function a () {
+    //   console.log(2222)
+    // }
+  },
+  beforeDestroy () {
+    window.$(window).off('resize', this.resizeFunc)
   },
   },
   methods: {
   methods: {
+    resizeFunc () {
+      // console.log(123132)
+      this.init()
+      this.setPosition()
+    },
+    windowResize () {
+      let _this = this
+      // debugger
+      window.$(window).on('resize', _this.resizeFunc)
+    },
     init () {
     init () {
       this.boxW = document.querySelector('.water-fall').getBoundingClientRect().width
       this.boxW = document.querySelector('.water-fall').getBoundingClientRect().width
       this.wfitemW = (this.boxW - this.gap * (this.colNum - 1)) / this.colNum
       this.wfitemW = (this.boxW - this.gap * (this.colNum - 1)) / this.colNum
     },
     },
     setPosition () {
     setPosition () {
+      // console.log(this.list)
       let nodeList = document.querySelectorAll('.wf-item')
       let nodeList = document.querySelectorAll('.wf-item')
       nodeList.forEach((e, i) => {
       nodeList.forEach((e, i) => {
-        console.log(e.getBoundingClientRect())
+        // console.log(e.getBoundingClientRect())
         let itemH = e.getBoundingClientRect().height
         let itemH = e.getBoundingClientRect().height
         let itemW = this.wfitemW
         let itemW = this.wfitemW
         let itemT = 0
         let itemT = 0
@@ -56,12 +84,14 @@ export default {
         // let itemT = rowIndex*itemW +
         // let itemT = rowIndex*itemW +
         if (i < 3) {
         if (i < 3) {
           itemL = i * (itemW + this.gap)
           itemL = i * (itemW + this.gap)
+          // console.log(itemL)
           this.lastItem.push({
           this.lastItem.push({
             t: itemT + itemH + this.gap,
             t: itemT + itemH + this.gap,
             l: itemL
             l: itemL
           })
           })
         } else {
         } else {
           let minItem = this.findMinTopItem()
           let minItem = this.findMinTopItem()
+          // console.log(minItem)
           itemL = minItem.item.l
           itemL = minItem.item.l
           itemT = minItem.item.t
           itemT = minItem.item.t
           this.lastItem[minItem.index] = {
           this.lastItem[minItem.index] = {
@@ -75,6 +105,7 @@ export default {
           top: `${itemT}px`,
           top: `${itemT}px`,
           left: `${itemL}px`
           left: `${itemL}px`
         }
         }
+        // console.log(this.list)
         // this.list[i].style.width =
         // this.list[i].style.width =
         // this.list[i].style.height = `${itemH}px`
         // this.list[i].style.height = `${itemH}px`
         // this.list[i].style.top = `${itemT}px`
         // this.list[i].style.top = `${itemT}px`