babel、可选链_空值合并运算符 、 switch

参考自: https://www.npmjs.com/package/vue-template-babel-compiler  【具体用法参考官网】

一 可选链

引用自可选链的应用 https://www.cnblogs.com/silvestris/p/15857630.html

yarn add -D vue-template-babel-compiler


vue.config.js

module.exports = {
    chainWebpack: config => {
        config.module
            .rule('vue')
            .use('vue-loader')
            .tap(options => {
                options.compiler = require('vue-template-babel-compiler')
                return options
            })
    }
}

二 babel是什么以及 作用

babel是JS编译器,若需要兼容低版本浏览器,需要引入babel,会将es6转为es5

怎么配置babel呢?

 引用自 https://www.cnblogs.com/zhangnan35/p/12682925.html

lib-flexible| 方案1 这个过渡方案有一定的问题【rem是相对于html字体而言,用字体来布局不合适】,

推荐用postcss-px-to-viewport | 方案2   {src【根目录是src】下配置:.postcssrc.js}

 ***步骤*****V:【重启即可】

yarn add postcss-px-to-viewport -D


在src【根目录是src】下配置:.postcssrc.js

module.exports = {
  plugins: {
    autoprefixer: {}, // 用来给不同的浏览器自动添加相应前缀,如-webkit-,-moz-等等
    "postcss-px-to-viewport": {
      unitToConvert: "px", // 要转化的单位
      viewportWidth: 750, // UI设计稿的宽度
      unitPrecision: 6, // 转换后的精度,即小数点位数
      propList: ["*"], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换
      viewportUnit: "vw", // 指定需要转换成的视窗单位,默认vw
      fontViewportUnit: "vw", // 指定字体需要转换成的视窗单位,默认vw
      selectorBlackList: ["wrap"], // 指定不转换为视窗单位的类名,
      minPixelValue: 1, // 默认值1,小于或等于1px则不进行转换
      mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认false
      replace: true, // 是否转换后直接更换属性值
      exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配
      landscape: false // 是否处理横屏情况
    }
  }
}; 

   vue-cli的vue.config.js https://cli.vuejs.org/guide/webpack.html 

二  switch 比 if 效率高

需要写上break,不然会继续执行,不会关掉
switch(表达式) {
     case n:
        代码块
        break;
     case n:
        代码块
        break;
     default:
        默认代码块
} 

  

 

posted @ 2022-09-20 11:20  lxq3280  阅读(314)  评论(0)    收藏  举报