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

手机网站设计尺寸大小互联网营销培训课程

手机网站设计尺寸大小,互联网营销培训课程,天猫官方网站首页,一般app开发费用在 Vue CLI 项目中进行构建优化,是前端性能提升的重要手段。它涉及到 Webpack 配置、代码分包、懒加载、依赖优化、图片压缩等多个方面。 🧱 基础构建优化 设置生产环境变量 NODE_ENVproduction Vue CLI 会自动在 npm run build 时开启以下优化&…

在 Vue CLI 项目中进行构建优化,是前端性能提升的重要手段。它涉及到 Webpack 配置、代码分包、懒加载、依赖优化、图片压缩等多个方面。

🧱 基础构建优化

设置生产环境变量

NODE_ENV=production

Vue CLI 会自动在 npm run build 时开启以下优化:

  • 压缩 JS / CSS
  • 移除 console 和 debugger
  • 自动分离 vendor 文件(依赖包)

开启 gzip 压缩

使用 compression-webpack-plugin:

npm install compression-webpack-plugin -D
// vue.config.js
const CompressionWebpackPlugin = require('compression-webpack-plugin')module.exports = {configureWebpack: {plugins: [new CompressionWebpackPlugin({algorithm: 'gzip',test: /\.(js|css|html|svg)$/,threshold: 10240,minRatio: 0.8})]}
}

去除 map 文件

module.exports = {productionSourceMap: false
}

📦 代码层优化

路由懒加载(代码分割)

const Home = () => import(‘@/views/Home.vue’)

打包时,每个路由页面都会单独分包。

使用 CDN 加载库文件

把 Vue、Vuex、Vue Router 等用 CDN 引入:

// vue.config.js
module.exports = {configureWebpack: {externals: {vue: 'Vue','vue-router': 'VueRouter',vuex: 'Vuex'}}
}

然后在 public/index.html 中引入 CDN:

<script src="https://cdn.jsdelivr.net/npm/vue@3/dist/vue.global.prod.js"></script>

Tree Shaking & 按需引入

避免全量引入组件库,例如:

// ❌ 错误
import ElementPlus from 'element-plus'
app.use(ElementPlus)// ✅ 推荐
import { ElButton, ElSelect } from 'element-plus'
app.use(ElButton).use(ElSelect)

🧠 Webpack 配置层优化(Vue CLI 内部使用 Webpack)

使用缓存

// vue.config.js
module.exports = {chainWebpack: config => {config.cache(true)}
}

分析包体积

npm install webpack-bundle-analyzer -D
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPluginmodule.exports = {configureWebpack: {plugins: [new BundleAnalyzerPlugin()]}
}

🖼 资源层优化

图片压缩

使用 image-webpack-loader:

npm install image-webpack-loader -D
module.exports = {chainWebpack: config => {config.module.rule('images').use('image-webpack-loader').loader('image-webpack-loader').options({mozjpeg: { progressive: true, quality: 65 },pngquant: { quality: [0.65, 0.90], speed: 4 }})}
}

图片懒加载

npm install vue-lazyload
import VueLazyload from 'vue-lazyload'
app.use(VueLazyload, { loading: 'loading.png' })

🧊 缓存优化(浏览器缓存策略)

文件名加 hash(默认支持)

Vue CLI 打包后文件名默认带有 [hash],有助于浏览器缓存:

app.234d7f.js

静态资源持久缓存(使用 CDN + Cache-Control)

在 nginx 或服务端配置:

Cache-Control: max-age=31536000

✅ 总结表格

优化项方法效果
路由懒加载import() 异步组件减少初始加载体积
CDN 加载依赖externals + script 标签减少 bundle 体积
gzip 压缩compression-webpack-plugin减少传输体积
移除 consoleterser 插件自动处理减少无用代码
图片压缩image-webpack-loader优化图片大小
分析构建webpack-bundle-analyzer找出最大依赖
map 文件移除productionSourceMap: false避免泄露源代码
资源缓存hash 文件名 + Cache-Control浏览器缓存优化

示例

以下是一个Vue CLI 项目中的完整优化配置文件 vue.config.js,包含以下功能:
• 关闭 source map
• 使用 CDN 外部引入 Vue、Vuex、Vue Router
• gzip 压缩
• 图片压缩
• 移除 console/debugger
• 打包分析器(可选)

✅ vue.config.js

const CompressionWebpackPlugin = require('compression-webpack-plugin')
const TerserPlugin = require('terser-webpack-plugin')
const isProd = process.env.NODE_ENV === 'production'module.exports = {productionSourceMap: false, // 关闭 source mapconfigureWebpack: config => {const plugins = []// gzip 压缩if (isProd) {plugins.push(new CompressionWebpackPlugin({algorithm: 'gzip',test: /\.(js|css|html|svg)$/,threshold: 10240,minRatio: 0.8}))}// CDN 依赖(在 index.html 中引入)config.externals = isProd? {vue: 'Vue','vue-router': 'VueRouter',vuex: 'Vuex'}: {}config.plugins = [...config.plugins, ...plugins]},chainWebpack: config => {// 图片压缩config.module.rule('images').use('image-webpack-loader').loader('image-webpack-loader').options({mozjpeg: { progressive: true, quality: 65 },optipng: { enabled: false },pngquant: { quality: [0.65, 0.9], speed: 4 },gifsicle: { interlaced: false },webp: { quality: 75 }})// 打包分析(按需启用)if (process.env.ANALYZE) {config.plugin('webpack-bundle-analyzer').use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)}},// 移除 console/debugger(可选)configureWebpack: config => {if (isProd) {config.optimization = {minimizer: [new TerserPlugin({terserOptions: {compress: {drop_console: true,drop_debugger: true}},extractComments: false})]}}}
}

✅ 还需要在 public/index.html 中引入 CDN(用于生产环境)

<!-- public/index.html -->
<head><title>Vue App</title><% if (process.env.NODE_ENV === 'production') { %><script src="https://cdn.jsdelivr.net/npm/vue@3/dist/vue.global.prod.js"></script><script src="https://cdn.jsdelivr.net/npm/vuex@4.1.0/dist/vuex.global.prod.js"></script><script src="https://cdn.jsdelivr.net/npm/vue-router@4.1.0/dist/vue-router.global.prod.js"></script><% } %>
</head>
http://www.dtcms.com/wzjs/407788.html

相关文章:

  • 上海高端模板建站三生网络营销靠谱吗
  • 淘宝联盟怎么自己做网站推广2345网址中国最好
  • 阿里云网站建设方案书填写源码交易平台
  • 做冷库的网站百度sem优化师
  • mac 做网站开发培训中心
  • 平山县建设局网站免费seo网站的工具
  • 郑州设计师网站大全seo优化推广流程
  • 网站服务器暂时不可用怎么办手机网站模板免费下载
  • 中微电力建设公司网站手机免费建站系统
  • 佛山网站建设哪家便宜网站快速排名推荐
  • 网站在哪里设置域名设计公司
  • 做婚恋网站的翻译好吗网络营销成功的案例及其原因
  • 各类武汉手机网站建设宁波seo推广定制
  • 如何做拉勾勾网站代做网页设计平台
  • 自个做网站教程外链发布平台
  • 青岛网站设计案例优化设计七年级下册语文答案
  • 建盏名家罗建明简介深圳seo优化排名优化
  • 成都做网站的公司重庆网站建设推广
  • 网站怎么做百度优化一键生成网站
  • 博物馆wordpress主体二十条优化疫情措施
  • 做网站要学什么百度手机app
  • 企业网站建设教程 pdf优化推广联盟
  • 无锡网页网站制作公司服务营销7p理论
  • 域名备案怎么关闭网站最新app推广
  • 小程序app怎么做seo点击排名器
  • 吴中快速建设网站价格流程优化
  • 全屋定制效果图网站seo诊断报告怎么写
  • 怎么给搞笑网站做文案公司官网制作多少钱
  • 武汉悠牛网网站建设信阳seo
  • 自学网站建设好学吗今日新闻头条10条