瀏覽代碼

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

李文 4 年之前
父節點
當前提交
0e17e7b2ed
共有 66 個文件被更改,包括 267 次插入77 次删除
  1. 二進制
      src/assets/img/jczj/icon-apiwg.png
  2. 二進制
      src/assets/img/jczj/icon-bzdlys.png
  3. 二進制
      src/assets/img/jczj/icon-bzdxsj.png
  4. 二進制
      src/assets/img/jczj/icon-bzqxyx.png
  5. 二進制
      src/assets/img/jczj/icon-bzslwp.png
  6. 二進制
      src/assets/img/jczj/icon-bzswmx.png
  7. 二進制
      src/assets/img/jczj/icon-bzyxsj.png
  8. 二進制
      src/assets/img/jczj/icon-clda.png
  9. 二進制
      src/assets/img/jczj/icon-czrz.png
  10. 二進制
      src/assets/img/jczj/icon-dawh.png
  11. 二進制
      src/assets/img/jczj/icon-dazdy.png
  12. 二進制
      src/assets/img/jczj/icon-dddlfw.png
  13. 二進制
      src/assets/img/jczj/icon-dpda.png
  14. 二進制
      src/assets/img/jczj/icon-dwjx.png
  15. 二進制
      src/assets/img/jczj/icon-fbsyykf.png
  16. 二進制
      src/assets/img/jczj/icon-ffdy.png
  17. 二進制
      src/assets/img/jczj/icon-fzfw.png
  18. 二進制
      src/assets/img/jczj/icon-jrclyq.png
  19. 二進制
      src/assets/img/jczj/icon-jsmxkj.png
  20. 二進制
      src/assets/img/jczj/icon-kshfxtyxt.png
  21. 二進制
      src/assets/img/jczj/icon-lcbdfw.png
  22. 二進制
      src/assets/img/jczj/icon-ljskf.png
  23. 二進制
      src/assets/img/jczj/icon-mxgl.png
  24. 二進制
      src/assets/img/jczj/icon-qjdlxx.png
  25. 二進制
      src/assets/img/jczj/icon-qyda.png
  26. 二進制
      src/assets/img/jczj/icon-ryda.png
  27. 二進制
      src/assets/img/jczj/icon-sjda.png
  28. 二進制
      src/assets/img/jczj/icon-sjgd.png
  29. 二進制
      src/assets/img/jczj/icon-sjkshfw.png
  30. 二進制
      src/assets/img/jczj/icon-sjmf.png
  31. 二進制
      src/assets/img/jczj/icon-sjzz.png
  32. 二進制
      src/assets/img/jczj/icon-snwyth.png
  33. 二進制
      src/assets/img/jczj/icon-sslxr.png
  34. 二進制
      src/assets/img/jczj/icon-swdcxr.png
  35. 二進制
      src/assets/img/jczj/icon-swdxfx.png
  36. 二進制
      src/assets/img/jczj/icon-swsjct.png
  37. 二進制
      src/assets/img/jczj/icon-swsjjz.png
  38. 二進制
      src/assets/img/jczj/icon-swtxmn.png
  39. 二進制
      src/assets/img/jczj/icon-tyqxrz.png
  40. 二進制
      src/assets/img/jczj/icon-tysjfw.png
  41. 二進制
      src/assets/img/jczj/icon-tyyhfw.png
  42. 二進制
      src/assets/img/jczj/icon-wbfx.png
  43. 二進制
      src/assets/img/jczj/icon-wfs.png
  44. 二進制
      src/assets/img/jczj/icon-wms.png
  45. 二進制
      src/assets/img/jczj/icon-wmts.png
  46. 二進制
      src/assets/img/jczj/icon-xtrz.png
  47. 二進制
      src/assets/img/jczj/icon-xtxtgj.png
  48. 二進制
      src/assets/img/jczj/icon-xxdl.png
  49. 二進制
      src/assets/img/jczj/icon-ycrz.png
  50. 二進制
      src/assets/img/jczj/icon-yhjsgl.png
  51. 二進制
      src/assets/img/jczj/icon-yhqxgl.png
  52. 二進制
      src/assets/img/jczj/icon-yhrz.png
  53. 二進制
      src/assets/img/jczj/icon-yhxxrz.png
  54. 二進制
      src/assets/img/jczj/icon-yzsff.png
  55. 二進制
      src/assets/img/jczj/icon-zhxss.png
  56. 二進制
      src/assets/img/jczj/icon-znbq.png
  57. 二進制
      src/assets/img/jczj/icon-znsb.png
  58. 二進制
      src/assets/img/jczj/icon-zstp.png
  59. 二進制
      src/assets/img/jczj/icon-zxfb.png
  60. 二進制
      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

二進制
src/assets/img/jczj/icon-apiwg.png


二進制
src/assets/img/jczj/icon-bzdlys.png


二進制
src/assets/img/jczj/icon-bzdxsj.png


二進制
src/assets/img/jczj/icon-bzqxyx.png


二進制
src/assets/img/jczj/icon-bzslwp.png


二進制
src/assets/img/jczj/icon-bzswmx.png


二進制
src/assets/img/jczj/icon-bzyxsj.png


二進制
src/assets/img/jczj/icon-clda.png


二進制
src/assets/img/jczj/icon-czrz.png


二進制
src/assets/img/jczj/icon-dawh.png


二進制
src/assets/img/jczj/icon-dazdy.png


二進制
src/assets/img/jczj/icon-dddlfw.png


二進制
src/assets/img/jczj/icon-dpda.png


二進制
src/assets/img/jczj/icon-dwjx.png


二進制
src/assets/img/jczj/icon-fbsyykf.png


二進制
src/assets/img/jczj/icon-ffdy.png


二進制
src/assets/img/jczj/icon-fzfw.png


二進制
src/assets/img/jczj/icon-jrclyq.png


二進制
src/assets/img/jczj/icon-jsmxkj.png


二進制
src/assets/img/jczj/icon-kshfxtyxt.png


二進制
src/assets/img/jczj/icon-lcbdfw.png


二進制
src/assets/img/jczj/icon-ljskf.png


二進制
src/assets/img/jczj/icon-mxgl.png


二進制
src/assets/img/jczj/icon-qjdlxx.png


二進制
src/assets/img/jczj/icon-qyda.png


二進制
src/assets/img/jczj/icon-ryda.png


二進制
src/assets/img/jczj/icon-sjda.png


二進制
src/assets/img/jczj/icon-sjgd.png


二進制
src/assets/img/jczj/icon-sjkshfw.png


二進制
src/assets/img/jczj/icon-sjmf.png


二進制
src/assets/img/jczj/icon-sjzz.png


二進制
src/assets/img/jczj/icon-snwyth.png


二進制
src/assets/img/jczj/icon-sslxr.png


二進制
src/assets/img/jczj/icon-swdcxr.png


二進制
src/assets/img/jczj/icon-swdxfx.png


二進制
src/assets/img/jczj/icon-swsjct.png


二進制
src/assets/img/jczj/icon-swsjjz.png


二進制
src/assets/img/jczj/icon-swtxmn.png


二進制
src/assets/img/jczj/icon-tyqxrz.png


二進制
src/assets/img/jczj/icon-tysjfw.png


二進制
src/assets/img/jczj/icon-tyyhfw.png


二進制
src/assets/img/jczj/icon-wbfx.png


二進制
src/assets/img/jczj/icon-wfs.png


二進制
src/assets/img/jczj/icon-wms.png


二進制
src/assets/img/jczj/icon-wmts.png


二進制
src/assets/img/jczj/icon-xtrz.png


二進制
src/assets/img/jczj/icon-xtxtgj.png


二進制
src/assets/img/jczj/icon-xxdl.png


二進制
src/assets/img/jczj/icon-ycrz.png


二進制
src/assets/img/jczj/icon-yhjsgl.png


二進制
src/assets/img/jczj/icon-yhqxgl.png


二進制
src/assets/img/jczj/icon-yhrz.png


二進制
src/assets/img/jczj/icon-yhxxrz.png


二進制
src/assets/img/jczj/icon-yzsff.png


二進制
src/assets/img/jczj/icon-zhxss.png


二進制
src/assets/img/jczj/icon-znbq.png


二進制
src/assets/img/jczj/icon-znsb.png


二進制
src/assets/img/jczj/icon-zstp.png


二進制
src/assets/img/jczj/icon-zxfb.png


二進制
src/assets/img/jczj/icon-zzjgrz.png


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

@@ -1835,17 +1835,30 @@ html,body{
     padding:0;
   }
   .csm-item{
-    background-color: #f00;
+    background-color: #fafafa;
+    // background-color: #ff0;
     @include smp-radius-normal();
     height:68px;
     display: flex;
     align-items: center;
     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{
       width:38px;
       height:38px;
       border-radius:100px;
-      background-color: #ff0;
+      // background-color: #ff0;
       flex-shrink: 0;
       margin:0 6.25% 0 9.375%;
     }
@@ -1857,12 +1870,16 @@ html,body{
       max-height:60px;
       overflow:hidden;
       padding:0 8% 0 0;
-      white-space:pre-wrap;
+      // word-wrap: break-all;
+      word-break: break-all;
+      white-space: pre-wrap;
+      
     }
   }
 }
 .csm-zk-menu{
   width:auto!important;
+  border-right:none;
   .el-submenu__title{
     padding:0!important;
     height:auto;
@@ -1876,7 +1893,21 @@ html,body{
     font-size:30px;
     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{

+ 12 - 2
src/router/index.js

@@ -68,8 +68,8 @@ router.beforeEach((to, from, next) => {
       Vue.prototype.$message.error(res.msg)
       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)
     // if (!firstPath) {
     //   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) {
   let arr = list.filter((e) => {
     if (!e.path) {

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

@@ -1,9 +1,7 @@
 <template>
   <main class="smp-content" :class="{'isIframe':isIframe}">
     <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>
 </template>
 

文件差異過大導致無法顯示
+ 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 v-if="menuItem.lv===1" class="cs">
         <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>
+          <i class="el-icon-arrow-right"></i>
         </div>
       </template>
       <template v-if="menuItem.lv>=2">
@@ -16,18 +17,22 @@
     </template>
     <com-thirdmenu v-for="item in menuItem.children" :key="item.id+'sub'" :menuItem="item"></com-thirdmenu>
   </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">
       <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>
     </template>
     <template v-if="menuItem.lv>=2">
+      <a class="menuItemA" :href="getHref(menuItem)" :target="getTarget(menuItem)">
       <em class="csm-point">&middot;</em>
       <span class="csm-sec-name" :title=" menuItem.name">
         {{ menuItem.name }}
       </span>
+      </a>
     </template>
   </el-menu-item>
 </template>
@@ -50,11 +55,34 @@ export default {
   components: {
     comThirdmenu
   },
+  mounted () {
+    // console.log(this.menuItem)
+  },
   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) {
       console.log(item)
       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 // 屏幕宽度
     }
   },
-  computed: {},
+  watch: {
+    list () {
+      this.$nextTick(() => {
+        this.setPosition()
+      })
+    }
+  },
   created () {
 
   },
   mounted () {
-    this.init()
+    this.windowResize()
     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: {
+    resizeFunc () {
+      // console.log(123132)
+      this.init()
+      this.setPosition()
+    },
+    windowResize () {
+      let _this = this
+      // debugger
+      window.$(window).on('resize', _this.resizeFunc)
+    },
     init () {
       this.boxW = document.querySelector('.water-fall').getBoundingClientRect().width
       this.wfitemW = (this.boxW - this.gap * (this.colNum - 1)) / this.colNum
     },
     setPosition () {
+      // console.log(this.list)
       let nodeList = document.querySelectorAll('.wf-item')
       nodeList.forEach((e, i) => {
-        console.log(e.getBoundingClientRect())
+        // console.log(e.getBoundingClientRect())
         let itemH = e.getBoundingClientRect().height
         let itemW = this.wfitemW
         let itemT = 0
@@ -56,12 +84,14 @@ export default {
         // let itemT = rowIndex*itemW +
         if (i < 3) {
           itemL = i * (itemW + this.gap)
+          // console.log(itemL)
           this.lastItem.push({
             t: itemT + itemH + this.gap,
             l: itemL
           })
         } else {
           let minItem = this.findMinTopItem()
+          // console.log(minItem)
           itemL = minItem.item.l
           itemT = minItem.item.t
           this.lastItem[minItem.index] = {
@@ -75,6 +105,7 @@ export default {
           top: `${itemT}px`,
           left: `${itemL}px`
         }
+        // console.log(this.list)
         // this.list[i].style.width =
         // this.list[i].style.height = `${itemH}px`
         // this.list[i].style.top = `${itemT}px`