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

惠州网站推广排名公司推广做哪个网站吗

惠州网站推广排名,公司推广做哪个网站吗,wordpress dx seo,宁波seo教程app推广文章目录 前言包准备CDN 集成代码分包Tree Shaking原理实现条件#xff1a;解决 treeShaking 无效方案#xff1a;示例代码#xff1a; 热更新#xff08;HMR#xff09; 前言 Webpack 作为现代前端开发中的核心构建工具#xff0c;提供了丰富的特性来帮助开发者优化和打… 文章目录 前言包准备CDN 集成代码分包Tree Shaking原理实现条件解决 treeShaking 无效方案示例代码 热更新HMR 前言 Webpack 作为现代前端开发中的核心构建工具提供了丰富的特性来帮助开发者优化和打包应用。本文将探讨 Webpack 的 CDN 集成、代码分包、Tree Shaking 以及热更新HMR等关键特性。 我们将使用前一篇文章中的代码然后我们引入一些图片、css 等资源文件已经一些常用的第三方库如lodash 包准备 安装文件处理的 loader 和后续分析的包 yarn add webpack-bundle-analyzer terser-webpack-plugin url-loader file-loader -D在 webpack.config.js 添加 处理文件的 loader , file-loader module: {rules: [// ... 省略{test: /\.(jpg|png|jpeg|gif)$/,use: [file-loader],},],}, 修改 list.vue templatedivimg :srcjsJpg /h3前端三大框架:/h3ulli v-foritem in list :keyitem{{ item }}/li/ul/div /templatescript import jsJpg from /static/js.jpg export default {name:List,data() {return {list: [Vue, React, Angular],jsJpg};}, }; /script 运行结果 打包结果 执行 yarn build CDN 集成 CDN内容分发网络的使用可以显著提高资源加载速度特别是对于静态资源。 我们可以有三种种方式来完成 output 配置中的 publicPath 这里我们如果没有 cdn可以通过修改 hosts 文件的方式, 文件路径C:\Windows\System32\drivers\etc添加内容127.0.0.1 ziyu.aliyun.com, 最后我们添加启动端口 const mode process.env.NODE_ENV development ? development : production; const isDev process.env.NODE_ENV development;output: {path: path.resolve(__dirname, dist),filename: bundle.js,publicPath: isDev ? / : http://ziyu.aliyun.com:3000/,},添加前运行文件 打包运行后文件效果 配置externals属性将某些依赖项从打包文件中排除并通过 CDN 链接直接引入。 externals: {vue: Vue,vue-router: VueRouter, }在 html 文件中添加 !DOCTYPE html html langenheadmeta charsetUTF-8 /meta nameviewport contentwidthdevice-width, initial-scale1.0 /title% htmlWebpackPlugin.options.title %/titlescript srchttps://cdn.jsdelivr.net/npm/vue2.7.16/dist/vue.js/scriptscript srchttps://unpkg.com/vue-router3.0.0/dist/vue-router.js/script/headbodydiv idapp/div/body /html添加打包分析器 const BundleAnalyzerPlugin require(webpack-bundle-analyzer).BundleAnalyzerPluginplugins: [// ...new BundleAnalyzerPlugin({analyzerMode: static,reportFilename: report.html,openAnalyzer: false,}),], 执行 yarn build, 查看report.html , 没有 vue和vue-router的代码 使用html-webpack-plugin插件在生成的 HTML 文件中动态插入 CDN 资源链接。 // 1. 配置插件new HtmlWebpackPlugin({title: vuew webpack,template: ./src/index.html,}), // 2. 配置html// 可以随便添加cdn代码分包 代码分包是 Webpack 优化应用加载性能的重要手段。通过将代码分割成多个包可以实现按需加载减少单次加载的数据量。 代码准备 我们新建一个utils/calc.js文件然后补充代码 export const sum (a, b) a b;常规使用 hello.vue 中引用 templatebutton clickcalcRes计算 : 5 6 结果/button {{ res }} /templatescript import { sum } from ../utils/calc; export default {data() {return {res: 0,};},methods: {calcRes() {this.res sum(5, 6);},}, }; /script打包结果 import() 分包 templatebutton clickcalcRes计算 : 5 6 结果/button {{ res }} /templatescript import { sum } from ../utils/calc; export default {data() {return {res: 0,};},methods: {calcRes() {this.res import(/* webpackChunkName: calc */ ../utils/calc).then(({ sum }) {this.res sum(5, 6);});},}, }; /script自动分包Webpack 的SplitChunksPlugin插件可以自动分析模块依赖关系将共享模块提取到单独的包中 供我们自定义更加细粒度的分包策略 optimization: {splitChunks: {chunks: all, // all, async, and initialminChunks :10,// 当包大于1000byte就拆分maxSize: 1000,// 拆分的每个包不能小于500byteminSize: 500,cacheGroups:{utils: {test: /utils/,filename: [id]_utils.js}}},},多入口分包通过entry属性手动定义多个入口点Webpack 会为每个入口点生成一个独立的包。 Tree Shaking Tree Shaking 是移除代码中未引用部分的过程它利用了 ES2015 模块的静态结构特性。 原理 一是先「标记」出模块导出值中哪些没有被用过二是使用 Terser 删掉这些没被用到的导出代码 实现条件 使用 ES2015 模块确保项目使用import和export语法。配置sideEffects在package.json中添加 sideEffects: false字段告诉 Webpack 哪些文件是纯模块可以安全地进行 Tree Shaking。在配置中开始标记optimization.usedExports true, 将构建设置成生产模式 mode production 解决 treeShaking 无效方案 babel/preset-env 或 babel-preset-env 不要将 target 设置为 node第三方包中的 sideEffects: false 示例代码 我们安装 loadsh-es包来测试它比 lodash 包更好的 tree-shaking yarn add lodash-es yarn add terser-webpack-plugin -Dbutton clicklog防抖函数/buttonscriptimport { debounce } from lodash-es;export default {methods: {log: debounce(()console.log(log....), 500),}} /script 更新配置文件 optimization: {minimize: true,minimizer: [new TerserPlugin()],usedExports: true,}, 打包结果可以看到结果中只有loadsh-es包的 debunce函数 热更新HMR 热更新允许在开发过程中实时更新应用而无需刷新页面。 配置webpack-dev-server通过webpack-dev-server提供热更新服务。使用HotModuleReplacementPlugin在 Webpack 配置中添加此插件实现模块的热替换。 devServer{hottrue }plugins: [new webpack.HotModuleReplacementPlugin() ]mounted() {if (module.hot) {module.hot.accept(./Hello.vue, () {});}},
http://www.lakalapos1.cn/news/12090/

相关文章:

  • 外贸网站建设策划山东网页定制
  • node 网站开发敬请期待换个说法
  • 专业网站搭建定做wordpress主题the 7
  • 免费的站内推广方式有哪些做网站的为什么不给域名和密码
  • 做网站属于什么备案wordpress 管理员登录
  • 做网站单页网站开发是什么工作
  • 如何做网站站长网站设计的销售
  • 做网站为什么每年都要续费青岛网红
  • 自助建设响应式网站福建大舟建设集团有限公司 网站
  • 网站结构逻辑结构wordpress整站密码访问
  • 成都旅行社网站建设信息门户平台
  • 网站建设 投资预算广告设计与制作的公司
  • 怎么做网站专题做网站麻烦么
  • 做网站的时候用的什么框架网站构建计划
  • 做一回最好的网站wordpress登录下载
  • 网站的技术建设wordpress jetpack
  • 建设实验室网站的意义做企业平台的网站有哪些
  • 营销型网站建设主要步骤宁波seo搜索引擎优化
  • 怎么建设一个电影资源网站解析wordpress divi主题
  • 用dw做音乐网站系统的代码佛山软件开发培训
  • 做包装设计的网站解析域名
  • 张家界做旅游网站本地集团网站建设
  • 网站后台如何添加关键词东营 网站建设
  • centos 如何建立网站建造师职业人才网平台
  • 2019年 dede网站做网站的空间是啥
  • 网站建设全包哪家便宜做企业网站需要人维护么
  • vue做网站首页南沙网站开发
  • 做pvc卡片的交流网站七台河新闻头条最新消息
  • php网站开发软件编程网站电脑培训班办公软件
  • 哈尔滨网站建设云聚达网站服务器服务商