css 技巧 nuxt打包优化

css 技巧

1. image-rendering 属性: 用于设置图像缩放算法;

auto | crisp-edges | pixelated 展示效果分别为

auto| cirsp-edges|pixelated

2. draggable 属性: 规定元素是否可拖动

<div>
  <div class="drag" draggable="true" id="dragger" ondragstart="handleDragStart(event)">拖动元素</div>
  <div class="drop" ondrop="handleDrop(event)" ondragover="allowDrop(event)">放置区域</div>
</div>
 function handleDragStart(e) {
    e.dataTransfer.setData('DRAG_NODE_ID', e.target.id)
  }
  function handleDragOver(e) {
    e.preventDefault();
  }
  function handleDrop(e) {
    e.preventDefault();
    var data = e.dataTransfer.getData('DRAG_NODE_ID');
    e.target.appendChild(document.getElementById(data));
  }

3.vue项目优化

cdn引入:

  1. 在index.html中加入

     <script src="https://cdn.bootcss.com/vuex/3.0.1/vuex.min.js"></script>
    
  2. 在bulid/webpack.base.conf.js文件中,增加externals,将引用的外部模块导入,如下:

    module.exports = {
     entry: {
      app: './src/main.js'
     },
     externals:{
      'vue': 'Vue',
      'vue-router': 'VueRouter',
      'vuex':'Vuex'
     }
    

格式为 ‘aaa’ : ‘bbb’, 其中,aaa表示要引入的资源的名字,bbb表示该模块提供给外部引用的名字,由对应的库自定。例如,vue为Vue,vue-router为VueRouter.

  1. 去掉原有的引用

     去掉import,去掉Vue.use(XXX),如:
     // import Vue from 'vue'
     // import Router from 'vue-router'
     // Vue.use(Router)
    
  2. 使用gzip方式压缩
    a. 安装compression-webpack-plugin
    b. vue.config.js文件进行webpack配置(没有此文件可以在项目根路径创建一个文件):

const CompressionPlugin = require('compression-webpack-plugin');
module.exports = {
       plugins: [
           new CompressionPlugin({
               algorithm: 'gzip', // 使用gzip压缩
               test: /\.js$|\.html$|\.css$/, // 匹配文件名
               filename: '[path].gz[query]', // 压缩后的文件名(保持原文件名,后缀加.gz)
               minRatio: 1, // 压缩率小于1才会压缩
               threshold: 10240, // 对超过10k的数据压缩
               deleteOriginalAssets: false, // 是否删除未压缩的源文件,谨慎设置,如果希望提供非gzip的资源,可不设置或者设置为false(比如删除打包后的gz后还可以加载到原始资源文件)
           }),
       ],
   },
};

nuxt中项目压缩:

gzip压缩是默认开启的,不必进行gzip压缩,build中analyze改为true,optimization的splitChunks修改文件大小会导致整体文件更大,vendor打包的库在2.0.0中可以去除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值