基于@vue/cli3的收获

149 阅读2分钟

前段时间结构升级,公司的业务逐渐开始由CS转为BS,对应的框架也得升级,大牛对现有已经拥有的功能进行整合,以供后续使用...

但是后续我惊喜的发现,现在用的居然是基于vue-cli老版脚手架

emmm.. 还阔以

继续查看,里面还是用着即将被淘汰的slotslot-scope 特性,word天哪,好歹也是最新写的公司前端架子,拥抱新版本造不造,没办法,毕竟vue3现在已经处于待产期了,应该尊重一下时代

于是我自己利用闲暇时光基于@vue/cli3脚手架写了一些东西,以备后续之需;

下面是我进行的一些小的封装

图片路径

大家都知道,因为业务层面一些图片路径是不方便直接在img[src]直接写的,所以,我们要使用importrequire进行本地导入,然后通过v-bind:src赋与img,但是总有几个情况是状况外的,比如:

其他端新建的新模块,要在主页控制台进行图标展示,但是这个图标只在web端展示,创建新模块时并没有任何图标的字段产生(我先翻个白眼)

这么坑爹的需求就产生了,每个模块有对应的图标图片,创建时压根就没有任何一个描述图片的数据,就导致我要根据不同的模块name(不要问我为什么不是模块id,因为id正式和测试完全不同)

这样的话就导致每次其他端创建新的模块,我这边就要根据不同模块重新构建打包部署,因为当新建模块后,模块name对应的图标不存在,然后require会直接贴心直接报错

Module not found: Error: Can't resolve xxx in xxxx.vue 进而导致模块入口完全都不渲染了

为了磨练自己(偷懒),我还是使用当找不到对应图片时,使用备用图标,我直接借力打力 你报错,我就让你报!!!

 let icon;
  try {
    icon = require(`./assets/${cn}.png`);
  } catch (error) {
    icon = require(`./assets/default.png`);
  }

直接通过try catch特性直接将图标附给正确的路径

工作繁忙,笔记稍后再记