当前位置: 首页 > news >正文

m 的手机网站怎么做俄罗斯网络攻击数量增长了80%

m 的手机网站怎么做,俄罗斯网络攻击数量增长了80%,佛山专业的网站建设,css代码大全1、如何提高webpack打包速度 a、优化Loader--影响Loader打包速度的首要元素是Babel,Babel 会将代码转为字符串生成 AST,然后对 AST 继续进行转变最后再生成新的代码,项目越大,转换代码越多,效率就越低。先优化 Loader …

1、如何提高webpack打包速度

         a、优化Loader--影响Loader打包速度的首要元素是Babel,Babel 会将代码转为字符串生成 AST,然后对 AST 继续进行转变最后再生成新的代码,项目越大,转换代码越多,效率就越低。先优化 Loader 的文件搜索范围,再将 Babel 编译过的文件缓存起来,下次只需要编译更改过的代码文件即可,这样可以大幅度加快打包时间。 

module.exports = {module: {rules: [{// js 文件才使用 babeltest: /\.js$/,loader: 'babel-loader',// 只在 src 文件夹下查找include: [resolve('src')],// 不会去查找的路径exclude: /node_modules/}]}
}loader: 'babel-loader?cacheDirectory=true'

        b、HappyPack--HappyPack 可以将 Loader 的同步执行转换为并行的,这样就能充分利用系统资源来加快打包效率。

module: {loaders: [{test: /\.js$/,include: [resolve('src')],exclude: /node_modules/,// id 后面的内容对应下面loader: 'happypack/loader?id=happybabel'}]
},
plugins: [new HappyPack({id: 'happybabel',loaders: ['babel-loader?cacheDirectory'],// 开启 4 个线程threads: 4})
]

         c、DllPlugin--DllPlugin 可以将特定的类库提前打包然后引入。这种方式可以极大的减少打包类库的次数,只有当类库更新版本才有需要重新打包,并且也实现了将公共代码抽离成单独文件的优化方案。

// 单独配置在一个文件中
// webpack.dll.conf.js
const path = require('path')
const webpack = require('webpack')
module.exports = {entry: {// 想统一打包的类库vendor: ['react']},output: {path: path.join(__dirname, 'dist'),filename: '[name].dll.js',library: '[name]-[hash]'},plugins: [new webpack.DllPlugin({// name 必须和 output.library 一致name: '[name]-[hash]',// 该属性需要与 DllReferencePlugin 中一致context: __dirname,path: path.join(__dirname, 'dist', '[name]-manifest.json')})]
}
// webpack.conf.js
module.exports = {// ...省略其他配置plugins: [new webpack.DllReferencePlugin({context: __dirname,// manifest 就是之前打包出来的 json 文件manifest: require('./dist/vendor-manifest.json'),})]
}

         d、代码压缩--不止可以压缩 JS 代码,还可以压缩 HTML、CSS 代码,并且在压缩 JS 代码的过程中,我们还可以通过配置实现比如删除console.log这类代码的功能。

        e、resolve.alias--可以通过别名的方式来映射一个路径,能让 Webpack 更快找到路径

        f、resolve.extensions--用来表明文件后缀列表,默认查找顺序是['.js', '.json'],如果你的导入文件没有添加后缀就会按照这个顺序查找文件。我们应该尽可能减少后缀列表长度,然后将出现频率高的后缀排在前面

2、如何减少webpack打包体积

        a、按需加载 

        b、Scope Hoisting 会分析出模块之间的依赖关系,尽可能的把打包出来的模块合并到一个函数中去。

        c、Tree Shaking 可以实现删除项目中未被引用的代码

3、如何用webpack来优化前端性能

  • 压缩代码:删除多余的代码、注释、简化代码的写法等等⽅式。可以利⽤webpack的 UglifyJsPlugin 和 ParallelUglifyPlugin 来压缩JS⽂件, 利⽤ cssnano (css-loader?minimize)来压缩css
  • 利⽤CDN加速: 在构建过程中,将引⽤的静态资源路径修改为CDN上对应的路径。可以利⽤webpack对于 output 参数和各loader的 publicPath 参数来修改资源路径
  • Tree Shaking: 将代码中永远不会⾛到的⽚段删除掉。可以通过在启动webpack时追加参数 --optimize-minimize 来实现
  • **Code Splitting:**将代码按路由维度或者组件分块(chunk),这样做到按需加载,同时可以充分利⽤浏览器缓存
  • 提取公共第三⽅库: SplitChunksPlugin插件来进⾏公共模块抽取,利⽤浏览器缓存可以⻓期缓存这些⽆需频繁变动的公共代码

4、如何提高webpack的构建速度

        a、多⼊⼝情况下,使⽤ CommonsChunkPlugin 来提取公共代码

        b、通过 externals 配置来提取常⽤库

        c、利⽤ DllPlugin 和 DllReferencePlugin 预编译资源模块 通过 DllPlugin 来对那些我们引⽤但是绝对不会修改的npm包来进⾏预编译,再通过 DllReferencePlugin 将预编译的模块加载进来。

        d、使⽤ Happypack 实现多线程加速编译

        e、使⽤ webpack-uglify-parallel 来提升 uglifyPlugin 的压缩速度。 原理上 webpack-uglify-parallel 采⽤了多核并⾏压缩来提升压缩速度

        f、使⽤ Tree-shaking 和 Scope Hoisting 来剔除多余代码

http://www.mmbaike.com/news/101946.html

相关文章:

  • 宁波专业网站seo公司torrentkitty磁力官网
  • html打开网页播放视频网站搜索引擎优化方法
  • 郑州专业的网站建设网络广告一般是怎么收费
  • 做平面设计都在那个网站找免费素材?百度客服电话
  • 网站域名怎么修改吗哪里可以接广告
  • 电商网站人员配置网推app怎么推广
  • 武汉制作公司网站营销策略包括哪些内容
  • 兰溪优秀高端网站设计地址深圳关键词优化报价
  • xampp怎么做网站新型网络营销模式
  • 做网站有自己的服务器直播:韩国vs加纳直播
  • 唐山哪里有建设网站重庆seo怎么样
  • 网站信任的体验如何做网站建设流程图
  • 深圳市福田区广州软件系统开发seo推广
  • 鹤岗北京网站建设网站快速有排名
  • 廊坊网站建设咨询青橙网络培训机构推荐
  • 什么类型的网站容易做竞价托管
  • 北京商场需要几天核酸优化设计四年级上册数学答案
  • 乌鲁木齐建设管理网站中国新闻网
  • 国外优秀的企业网站网站seo公司
  • 自媒体时代做网站有前途吗推广普通话心得体会
  • 网页制作的优势和劣势seo收录查询
  • 婚纱网站建设目的中国国家人事人才培训网官网
  • 张家港建网站的公司google ads 推广
  • 设计素材网站外网网络营销热点事件案例分析
  • 微信_网站提成方案点做推广普通话手抄报内容简短
  • 招网站开发人员微信crm系统
  • 苏州建站仿站百度seo优化分析
  • 祥云网站推广2023能用的磁力搜索引擎
  • wordpress 教育类主题衡水网站优化推广
  • 购物网站建设机构seo推广骗局