前言 使用Vue做管理系统和WebApp做过三四个项目了,期间遇到很多坑,再次一一列举,并给出解决方案,方便日后更方便使用,也为他人提供一些解决方案。 问题表象和解决方案 1、编译后js、css等相对路径和绝对路径。 config/inde.js文件 build: { env: require('./prod.env'), index: path.resolve(__dirname, '../dist/index.html'), assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'stat Vue CLI 是 Vue.js 的命令行工具,用于快速搭建 Vue 项目。它简化了项目的配置和构建过程,使得开发者可以更加专注于应用的业务逻辑。在使用 Vue CLI 构建项目时,有时会遇到一些常见问题,这里我们将逐一分析并提供解决方案。 1. **编译后的 js、css 等资源路径问题**: 在 `config/index.js` 文件中的 `build` 配置对象里,`assetsPublicPath` 字段决定了资源引用的路径。默认设置为 `'./'` 表示相对路径。如果在部署时需要调整,可以将其更改为绝对路径,如 `'/'`。例如,当项目部署在子目录下时,可能需要设置为 `/subdirectory/`。 2. **CSS 中图片相对路径的编译问题**: 当 CSS 中的背景图片路径在编译后不正确时,可以在 `build/utils.js` 文件中找到对 `ExtractTextPlugin` 的配置进行修改。添加 `publicPath` 参数,根据实际的路径需求进行调整。例如,如果图片路径定义为 `static/img/*`,则需要将 `publicPath` 设置为 `'../../'`。 3. **使用代理解决跨域请求**: Vue CLI 内置了 `http-proxy-middleware`,可以方便地配置代理以解决开发过程中 API 请求的跨域问题。在 `config/index.js` 文件的 `proxyTable` 对象中定义代理规则,如: ``` proxyTable: { '/dianmi_service': { target: 'https://****.com.cn', changeOrigin: true }, '/brand_service': { target: 'https://*****.com.cn', changeOrigin: true } } ``` 注意,`target` 字段不应包含工程名,以防止导致服务器 Session 问题。 4. **Vue 页面在 phonegap 编译的 Android App 中的兼容性问题**: 旧版本的 Cordova Android(如 4.0 以下)的默认 WebView 不支持 ES6,这可能导致 Vue 应用出现问题。为解决这个问题,可以使用腾讯浏览服务 X5 内核。一种方法是安装基于 X5 内核的 Cordova 插件,如 `cordova-plugin-x5engine-webview`。通过这个插件,可以在低版本 Android 设备上顺利运行 Vue 项目。 总结来说,Vue CLI 构建 Vue 项目时遇到的问题主要包括资源路径的调整、CSS 图片路径的修正、API 跨域请求的代理配置以及针对低版本 Android 兼容性的处理。理解这些问题的解决方案,有助于提高开发效率并确保项目的顺利部署。
- 粉丝: 4
- 资源: 922
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助