前端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文件,然后配置以下代码并保存

module.exports = {module: {rules: [{test: /\.vue$/,use: 'vue-loader'}, {test: /\.less$/,use: ['style-loader','css-loader','less-loader']}, {test: /\.css$/,use: ['style-loader','css-loader',]}]},plugins: {'autoprefixer': {overrideBrowserslist: ["Android 4.1","iOS 7.1","Chrome > 31","ff > 31","ie >= 8"]},'postcss-pxtorem': {rootValue: 37.5,propList: ['*']}}

三.配置vue.config.js

const { defineConfig } = require('@vue/cli-service')
const path = require('path')
module.exports = defineConfig({transpileDependencies: true,// 设置公共路径publicPath: './',// 开启http服务(协议、ip、端口)// devServer  仅仅是开发环境中使用,打包之后,哪些代理的ip是不能使用devServer: {// host: '127.0.0.1',// 设置静态资源路径 htmlcssjs图片static: {directory: path.join(__dirname, 'dist'),},// 端口 (当前项目环境)// http://localhost:3005port: 8080,// 自动打开网页open: true,// 热更新 保存JS代码)hot: true,//服务代理 (这数据接口仅仅在开发环境下使用|辅助开发的作用)proxy: {'/api': {// 代理地址(其他服务器环境)target: 'https://www.gaokaozhitongche.com',changeOrigin: true,secure: false,// 重载// pathRewrite: {//   '^/api': ''// }},},}
})// url: 'http://localhost:8080/api/v2/ranks/index-top3',
// url: 'https://www.gaokaozhitongche.com/api/v2/ranks/index-top3',//跨域接口

四.配置网络请求

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

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

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

// 接口地址:
// URL: http://localhost:8080/api/v2/ranks/index-top3
// 请求方式: GET
import axios from 'axios'// 创建axios实例
const _axios = axios.create({});
// 添加响应拦截器
_axios.interceptors.response.use(function (response) {// 获取数据成功做些什么// 返回响应对象中的data即可return response.data;},function (error) {// 响应失败return Promise.reject(error);}
);// 记录服务器地址
const HOST_URL = 'http://localhost:8080';// 接口1:
// GET 方式
export const ranksIndexTop = (data = {}) => {return _axios.get(`${HOST_URL}/api/v2/ranks/index-top3`, { params: data })
}// POST 方式 (以后使用再测试)
export const postFn = (data = {}) => {return _axios.post(`${HOST_URL}/xxxxxx`, data, {headers: {'Content-Type': 'application/x-www-form-urlencoded'}})
}// 接口2:
// 接口3:
// 接口4:
// 接口5:
// 接口6:
// 接口7:
// 接口8:

 五.设置主题颜色

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

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

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

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

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 中配置以下代码

module.exports = {plugins: [['import', {libraryName: 'vant',libraryDirectory: 'es',style: true}, 'vant']]
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/3443.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pytorch迁移学习训练病变分类模型

划分数据集 1.创建训练集文件夹和测试集文件夹 # 创建 train 文件夹 os.mkdir(os.path.join(dataset_path, train))# 创建 test 文件夹 os.mkdir(os.path.join(dataset_path, val))# 在 train 和 test 文件夹中创建各类别子文件夹 for Retinopathy in classes:os.mkdir(os.pa…

【Windows】达芬奇19安装教程

DaVinci Resolve Studio是一个结合专业的8k编辑、颜色混合、视觉效果和音频后期制作的软件。只需点击一下&#xff0c;你就可以立即在编辑、混音、特效和音频流之间切换。此外&#xff0c;达芬奇是一个多用户协作的解决方案&#xff0c;使编辑、助理、色彩学家、视觉效果设计师…

SpringBoot统一结果处理和统一异常处理

一、使用统一返回对象 大部分前后端项目采用 JSON 格式进行数据交互,定义一个统一的数据规范,有利于前后台的交互、以及信息处理。比如如下: 【输出格式如下所示】 {"success": true,"code": 200,"message": "查询用户列表",&quo…

OS复习笔记ch4

引言 上一章&#xff0c;我们学习了进程的相关概念和知识&#xff0c;不知道小伙伴们的学习进度如何&#xff0c;没看的小伙伴记得去专栏看完哦。 线程从何而来 我们之前说过&#xff0c;进程是对程序运行过程的抽象&#xff0c;它的抽象程度是比较高的。 一个进程往往对应一…

C++:静态成员变量和静态成员方法

静态成员变量 C中的静态成员变量是属于类而不是类的实例的变量。这意味着无论创建了多少个类的实例&#xff0c;静态成员变量都只有一个副本&#xff0c;并且可以被所有类的实例共享。 让我们来看一个示例&#xff1a; class RolePlayer { public://静态成员变量static int …

先进制造aps专题三 为什么java语言不适合作为aps算法的开发语言

为什么java语言不适合作为aps算法的开发语言 主要两个原因 1 java的list在特定位置插入&#xff0c;其实是重新生成一个新list,而不像c就是指针操作 2 数据量大&#xff0c;运行时间长&#xff0c;会跑崩 所以商业aps产品&#xff0c;都是清一色的用c写aps算法 先进制造…

Uniapp 点击图片放大

1、html(循环图片) <view v-for"(i,index) in photo_list" :key"photoindex"><img :src"i" alt"" click"ClickImage(photo_list,i)" /></view> 2、js(方法) ClickImage(PhotoAddress, index) {uni.previ…

值得让英伟达CEO黄仁勋亲自给OpenAI配送的AI服务器!一文带你了解算力,GPU,CPU!

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;所以创建了“AI信息Gap”这个公众号&#xff0c;专注于分享AI全维度知识…

CSS_scss切换主题

目录assets/theme以下新建文件 _handle.scss import ./_themes.scss;// 定义混合指令, 切换主题,并将主题中的所有规则添加到theme-map中 mixin themify() {// 将themes中规则放入theme-mapeach $theme-name,$theme-map in $themes {$theme-map: $theme-map !global;[data-t…

怎么办,孟德尔随机化连锁不平衡跑不了!这里有本地连锁不平衡分析方法

大家都知道&#xff0c;孟德尔随机化很大程度依赖于国外的服务器。 最近我们发现孟德尔随机化常用的TwoSampleMR包的clump函数经常报错&#xff0c;这是由于服务器访问人群超时造成的现象&#xff0c;当线上版本失效。 很多人做孟德尔随机化&#xff0c;就卡在clump上。 于是我…

OpenStack云计算(十)——OpenStack虚拟机实例管理,增加一个计算节点并进行实例冷迁移,增加一个计算节点的步骤,实例冷迁移的操作方法

项目实训一 本实训任务对实验环境要求较高&#xff0c;而且过程比较复杂&#xff0c;涉及的步骤非常多&#xff0c;有一定难度&#xff0c;可根据需要选做。可以考虑改为直接观看相关的微课视频 【实训题目】 增加一个计算节点并进行实例冷迁移 【实训目的】 熟悉增加一个…

vue-router源码解析

vue-router简介 vue-router工作原理: url改变触发监听事件 (原理见路由模式)改变vue-router里面的current变量vue监听current的监听者获取到新的组件render新组件 vue-router如何实现无刷新页面切换: 采用某种方式使url发生改变。这种方式可能是调用HTML5 history API实现,…

Visual Studio Code 快捷键大全

文章目录 1. 全局快捷键2. 基本编辑3. 导航4. 查找 & 替换5. 多光标 & 选择6. 代码编辑7. 编辑器管理8. 文件管理9. 显示10. Debug 调试11. 终端&#xff08;Terminal&#xff09; 1. 全局快捷键 快捷键说明Ctrl Shift P&#xff0c;F1显示命令面板Ctrl P快速打开&am…

牛客NC199 字符串解码【中等 递归,栈的思想 C++/Java/Go/PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/4e008fd863bb4681b54fb438bb859b92 相同题目&#xff1a; https://www.lintcode.com/problem/575 思路 解法和基础计算器1&#xff0c;2,3类似,递归参考答案C struct Info {string str;int stopindex;Info(str…

AOC vs. DAC:哪个更适合您的网络需求?

在现代网络通信中&#xff0c;选择合适的连接线缆对于数据传输的稳定性和速度至关重要。两种常见的线缆类型是 AOC&#xff08;Active Optical Cable&#xff09; 和 DAC&#xff08;Direct Attach Cable&#xff09;。本文将详细介绍这两种线缆的特点、优势和适用场景&#xf…

Aigtek:介电弹性体高压放大器在软体机器人研究中的应用

近年来软体机器人的研究成为目前机器人研究领域的热点&#xff0c;由于软体材料的自由度可以根据需求自由变化&#xff0c;因此软体机器人有着极高的灵活性&#xff0c;而且软体机器人因其材料的柔软性有着很好的人机交互性能和安全性。它的出现成功解决了传统的刚性机器人人机…

链表-LRU缓存

请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类&#xff1a; LRU是Least Recently Used的缩写&#xff0c;意为“最近最少使用”。LRU是一种常用的缓存淘汰策略&#xff0c;用于管理缓存中的数据。 举个例子&#xff0c;你从一堆书中找出…

JavaScript云LIS系统概述 前端框架JQuery+EasyUI+Bootstrap医院云HIS系统源码 开箱即用

云LIS系统概述JavaScript前端框架JQueryEasyUIBootstrap医院云HIS系统源码 开箱即用 云LIS&#xff08;云实验室信息管理系统&#xff09;是一种结合了计算机网络化信息系统的技术&#xff0c;它无缝嵌入到云HIS&#xff08;医院信息系统&#xff09;中&#xff0c;用于连…

《异常检测——从经典算法到深度学习》27 可执行且可解释的在线服务系统中重复故障定位方法

《异常检测——从经典算法到深度学习》 0 概论1 基于隔离森林的异常检测算法 2 基于LOF的异常检测算法3 基于One-Class SVM的异常检测算法4 基于高斯概率密度异常检测算法5 Opprentice——异常检测经典算法最终篇6 基于重构概率的 VAE 异常检测7 基于条件VAE异常检测8 Donut: …

Oracle 监控 SQL 精选 (一)

Oracle数据库的监控通常涉及性能、空间、会话、对象、备份、安全等多个层面。 有效的监控可以帮助 DBA 及时发现和解决问题&#xff0c;提高数据库的稳定性和性能&#xff0c;保障企业的数据安全和业务连续性。 常用的监控指标有&#xff1a; 性能指标&#xff1a; 查询响应时间…