当前位置:   article > 正文

前端Vue2项目搭建过程

前端Vue2项目搭建过程

一.准备工作

1.可以上网找一些设计稿寻找思路开发页面界面布局

站酷设计网站:站酷ZCOOL-设计师互动平台-打开站酷,发现更好的设计!

 花瓣网:花瓣网 - 陪你做生活的设计师(创意灵感天堂,搜索、发现设计灵感、设计素材)

2.找项目找需求

模仿别人如何开发设计

Gitee - 基于 Git 的代码托管和研发协作平台

GitHub: Let’s build from here · GitHub

3.写需求文档

设计什么页面,主界面,首页,分类,收藏,搜索,个人中心页等等

有些什么功能,用到什么技术栈

4.找接口

5.使用git对项目进行托管

二.快速创建vue项目以及做移动端适配

vue  cli  脚手架工具          ---->   vue ui     或者    vue  create  项目名

做移动端适配就是让项目写入px时自动跟随界面屏幕改变进而转换成适配大小的rem

 --------->安装           npm i amfe-flexible -S

----------->安装          npm install --save postcss-pxtorem@5.1.1

------>在项目入口文件main.js 中引入amfe-flexible              import 'amfe-flexible'

----->在根目录的index.html 的头部加入手机端适配的meta代码

<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">

------>新建postcss.config.js文件,然后配置以下代码并保存

  1. module.exports = {
  2. module: {
  3. rules: [{
  4. test: /\.vue$/,
  5. use: 'vue-loader'
  6. }, {
  7. test: /\.less$/,
  8. use: [
  9. 'style-loader',
  10. 'css-loader',
  11. 'less-loader'
  12. ]
  13. }, {
  14. test: /\.css$/,
  15. use: [
  16. 'style-loader',
  17. 'css-loader',
  18. ]
  19. }]
  20. },
  21. plugins: {
  22. 'autoprefixer': {
  23. overrideBrowserslist: [
  24. "Android 4.1",
  25. "iOS 7.1",
  26. "Chrome > 31",
  27. "ff > 31",
  28. "ie >= 8"
  29. ]
  30. },
  31. 'postcss-pxtorem': {
  32. rootValue: 37.5,
  33. propList: ['*']
  34. }
  35. }

三.配置vue.config.js

  1. const { defineConfig } = require('@vue/cli-service')
  2. const path = require('path')
  3. module.exports = defineConfig({
  4.   transpileDependencies: true,
  5.   // 设置公共路径
  6.   publicPath: './',
  7.   // 开启http服务(协议、ip、端口)
  8.   // devServer  仅仅是开发环境中使用,打包之后,哪些代理的ip是不能使用
  9.   devServer: {
  10.     // host: '127.0.0.1',
  11.     // 设置静态资源路径 htmlcssjs图片
  12.     static: {
  13.       directory: path.join(__dirname, 'dist'),
  14.     },
  15.     // 端口 (当前项目环境)
  16.     // http://localhost:3005
  17.     port: 8080,
  18.     // 自动打开网页
  19.     open: true,
  20.     // 热更新 保存JS代码)
  21.     hot: true,
  22.     //服务代理 (这数据接口仅仅在开发环境下使用|辅助开发的作用)
  23.     proxy: {
  24.       '/api': {
  25.         // 代理地址(其他服务器环境)
  26.         target: 'https://www.gaokaozhitongche.com',
  27.         changeOrigin: true,
  28.         secure: false,
  29.         // 重载
  30.         // pathRewrite: {
  31.         //   '^/api': ''
  32.         // }
  33.       },
  34.     },
  35.   }
  36. })
  37. // url: 'http://localhost:8080/api/v2/ranks/index-top3',
  38. // url: 'https://www.gaokaozhitongche.com/api/v2/ranks/index-top3',//跨域接口

四.配置网络请求

------>安装axios库        npm install axios

--------->挂载到main.js 入口文件上          import axios from 'axios'

------>在项目中创建api目录,在该目录下可以创建index.js文件,在这个文件中,可以创建axios实例进行配置,以及封装整个项目所需的接口,就可以在组件中调用封装的接口,以下是实例代码配置

  1. // 接口地址:
  2. // URL: http://localhost:8080/api/v2/ranks/index-top3
  3. // 请求方式: GET
  4. import axios from 'axios'
  5. // 创建axios实例
  6. const _axios = axios.create({});
  7. // 添加响应拦截器
  8. _axios.interceptors.response.use(
  9.     function (response) {
  10.         // 获取数据成功做些什么
  11.         // 返回响应对象中的data即可
  12.         return response.data;
  13.     },
  14.     function (error) {
  15.         // 响应失败
  16.         return Promise.reject(error);
  17.     }
  18. );
  19. // 记录服务器地址
  20. const HOST_URL = 'http://localhost:8080';
  21. // 接口1:
  22. // GET 方式
  23. export const ranksIndexTop = (data = {}) => {
  24.     return _axios.get(`${HOST_URL}/api/v2/ranks/index-top3`, { params: data })
  25. }
  26. // POST 方式 (以后使用再测试)
  27. export const postFn = (data = {}) => {
  28.     return _axios.post(`${HOST_URL}/xxxxxx`, data, {
  29.         headers: {
  30.             'Content-Type': 'application/x-www-form-urlencoded'
  31.         }
  32.     })
  33. }
  34. // 接口2:
  35. // 接口3:
  36. // 接口4:
  37. // 接口5:
  38. // 接口6:
  39. // 接口7:
  40. // 接口8:

 五.设置主题颜色

做一些全局样式,颜色边距这些,那么项目的统一颜色可以引入该主题样式,修改时就只需要修改该全局样式,整个vue项目就会改变

  1. // 全局变量
  2. // 网站/项目 外观主题
  3. // 例如:外边距 内边距 背景色  字体色 边框色
  4. @pad: 0 15px;
  5. @bgColor: #1588F5;
  6. @fontSize: 20px;
  7. @borderColor: #1b7dd8;
  8. @logoColor: #fff;
  9. //可以设置web字体引用
  10. @font-face {
  11.     font-family: 'logotext';
  12.     src: url(./font.ttf);
  13. }

到这里可以进行开发啦!!!

六.项目总结(容易出现的问题)

1、数据动态渲染,处理json格式数据的方式要熟练

2、页面效果要美观(视觉效果图)字体、颜色、背景、间距 色彩搭配。

3、 进行数据解剖取值,是否判断数据有值

4、 编写代码的速度要提升、工作量少 (没有拓展)

5、页面设计要合理、一张普通页面,不能超50%留空白

6.、路由、路由守卫、导航跳转,考虑项目问题、细节是否全面

7、核心功能必须实现

8、用户与界面的交互逻辑,处理能力急需提升

9、快速定位代码错误、独立解决bug的能力

10、描述项目、语言组织表达能力,开发流程、工作流程

11、开发过程中、要时不时的清除历史记录

在这基础上我们可以引用vant组件库和vuex来进行状态管理,解决繁琐的子传父,父传子的麻烦

七.附加

vuex插件下载

在通过脚手架vue cli 创建vue 项目时,可以把vuex 插件勾选上,那么就可以看到生成了一个store文件夹,可以进行组件之间传值

 vant@2插件库下载

----------->安装Vant2          npm i vant@latest-v2 -S

-------------> 安装插件 编译过程中将 import 的写法自动转换为按需引入的方式

         npm i babel-plugin-import -D

------------> 在 babel.config.js 中配置以下代码

  1. module.exports = {
  2. plugins: [
  3. ['import', {
  4. libraryName: 'vant',
  5. libraryDirectory: 'es',
  6. style: true
  7. }, 'vant']
  8. ]
  9. };

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/490050
推荐阅读
  

闽ICP备14008679号