开发流程及功能模块注意事项
初学者怎么做项目
项目分类
小而专的项目
初学一种技术,专门针对它进行实践,写demo
比如初学ajax
,学会了怎么发网络请求,学会了怎么异步请求数据。
- 就可以调用
google
的搜索图书的api
,专门写一个图书搜索的小项目
比如学了一个UI
库,可以做一些小卡片
- 也可以将结合几个小而专的技术在一起
- 耗时一两天
大而全的项目
进阶,融合技术
JS => React
- 耗时一两周
做什么项目
- 有自己的想法(有想法很简单,但很多想法以初学者的角度,实现起来是很难的)
- 有合适的想法
- 大胆去做
- 做自己喜欢的
- 为自己做项目,每个项目都用心去打磨下
- 自己没想法
- 模仿+创新
- 比如看板、微软的
todo
- 在模仿的基础上创新
- 逛
github
- 怎么逛
- 观察平时看的网页,想象这些页面都是怎么实现的,自己试试看
去哪儿找项目的idea
KelvinQiu802/project-ideas: 集合优质的项目仓库,找到适合你的项目。 (github.com)
- app-ideas ⭐⭐⭐⭐⭐
- project-based-learning ⭐⭐⭐⭐
- build-your-own-x ⭐⭐⭐⭐
- Web-Dev-For-Beginners ⭐⭐⭐
- projects ⭐⭐
推荐10个Vue 3.0开发的开源前端项目 - 知乎 (zhihu.com)
开发流程
环境搭建
确定好技术栈
基本配置
重置样式表
移动端适配:px2rem/fontsize动态设置
引入网络库axios
- 网络库基本封装
- 接口封装
引入ui库elementUI/Plus/vant
- ui库基本封装
- 按需导入配置
引入图标字体
- 选择图标字体
- 引入
引入常用的方法及混合
根据实际项目的不同,可能还要
- 引入可视化库echarts
- 实例化封装
- setOption动态封装
基本框架
确定好基本的功能模块
- 搭建路由组件、页面组件
功能模块注意点
登录注册
请求数据
封装网络请求
基于请求的数据,在取得
promise
结果后,在then
中执行实例化方法,如echarts
的实例化并setOption
获取数据前,应加上视觉加载效果,通过判断数据是否为空,控制
loading
类,注意其父元素应给一个绝对定位1
2
3
4
5
6
7
8<template>
<div>
<template>
<div class="loading"></div>
</template>
<template> 实际数据渲染区域</template>
</div>
</template>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42.loading {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
&:before,
&:after {
position: absolute;
top: 50%;
left: 50%;
content: '';
}
&:before {
margin: -48px 0 0 -25px;
width: 50px;
height: 50px;
background: url('../assets/images/loading.svg') no-repeat center center;
background-size: 100% 100%;
animation: loadingMove 2s linear 0s infinite;
}
&:after {
content: '努力加载中...';
margin: 8px 0 0 -120px;
width: 240px;
height: 30px;
line-height: 30px;
text-align: center;
font-size: 12px;
color: #676767;
}
@keyframes loadingMove {
100% {
transform: rotate(360deg);
}
}
}也可以使用第三方插件,显示网络请求进度条
数据初始化
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 吕小布の博客!
评论