与你一起写小程序
=====
最近一段时间在学习怎么写小程序,然后自己利用课外时间,也撸了一个。一直都很喜欢网易蜗牛读书这款App,对于喜爱的事物总是情不自禁的,于是就仿照网易蜗牛读书的App简单做了这款小程序。
项目地址:[杳杳飞花/Reading](https://github.com/Hwj1220/wangyi_reading)
------
项目预览:
------
![img](https://raw.githubusercontent.com/Hwj1220/wangyi_reading/master/assets/readmeImage/reading.gif)
项目准备:
------
大家若是感兴趣,可以跟着我一起来做哟^_^
☟ 蓝体点击就能跳转到相应页面进行下载或者查看教程
1、[微信开发者工具](https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html?t=201715) 他能帮助我们快速的进行小程序的开发。当然,在开发之前我们还需要拥有一个小程序账号([注册教程](https://jingyan.baidu.com/article/d7130635decb6a13fdf475d3.html)),通过账号我们就能够管理自己的小程序了。需要注意的是,只有满了18岁的童鞋们才可以注册。
2、[vs code](https://pan.baidu.com/s/1c1HxXOs) (密码:g2g5) 64位系统的,其他版本就自己去搜一下安装包啦。虽然在微信开发者工具里面就能够直接写,但还是喜欢在vs code里面进行coding。这个按大家喜好自由选择哦。
3、[Iconfont-阿里巴巴矢量图标库](http://www.iconfont.cn/) 一个阿里爸爸做的开源图库,它不仅有几百个公司的开源图标库,还有各式各样的小图标。有了这个图标库真是大大提高了我们的效率,我们能够根据需要进行图标搜索,还能够设置颜色、大小和图片格式。你想要的基本都有哦~
4、[EasyMock 简单高效的伪造数据](https://www.easy-mock.com/) 用于后台的数据模拟,得到JSON数据,方便开发。
5、[微信小程序开发文档](https://www.w3cschool.cn/weixinapp/9wou1q8j.html) W3C的这个文档真是超级详细,我们能够在这里查找到微信小程序的API、组件以及一些框架等。
另外还使用了一款MarkMan进行测量,但若是追求精准还原的话,还是用PS更细腻。
项目开发过程:
------
每一次的开发都是一个成长的过程。在开发过程中,我们会遇到各种问题,这就给了我们一个独立思考的空间,能够锻炼我们解决问题和查询文档的能力。当然,在思考查询之后还可以请教他人、进行探讨,这样往往能够帮助我们快速的找到盲点,甚至能够了解到更多我们忽视的点。和别人的交流也是学习中很重要的一环,所以在此分享了自己小小的一点经验,欢迎一起交流,一起学习。
### 1、开始项目
在项目开始时,我们首先在 app.json 文件中配置主体界面,设置好tabBar 。在这里我们对小程序设置确定了一个整体的基调。
"window":{
"backgroundTextStyle":"light",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "网易蜗牛读书",
"navigationBarTextStyle":"black"
},
"tabBar":{
"color":"#999999",
"selectedColor":"#444444",
"backgroungColor":"#ffffff",
"borderStyle":"#e0e0e0",
"list": [
{
"pagePath":"pages/leader/leader",
"iconPath": "assets/icons/lingdu.png",
"selectedIconPath": "assets/icons/lingdu_sel.png",
"text":"领读"
},
{
"pagePath":"pages/stack/stack",
"iconPath": "assets/icons/stack.png",
"selectedIconPath": "assets/icons/stack_sel.png",
"text":"分类"
},
{
"pagePath": "pages/bookdesk/bookdesk",
"iconPath": "assets/icons/bookdesk.png",
"selectedIconPath": "assets/icons/bookdesk_sel.png",
"text":"书桌"
},
{
"pagePath":"pages/mine/mine",
"iconPath": "assets/icons/mine.png",
"selectedIconPath": "assets/icons/mine_sel.png",
"text":"我的"
}
]
}
对于 pages 页面,在开发过程中进行过很多次调整。到现在为止觉得还算整洁和便于管理了。在起初,不管是一级页面还是二级页面,我都把它们放在了 pages 目录下。这样一开始还不觉得有什么,可是到后来页面越来越多,要对之前写过的页面进行修改和调整的时候,恍然间发现一堆文件夹,查找起来就觉得眼花缭乱,还要和页面进行配对,非常恼火。于是按照页面不同的级别层次,进行了相应的调整。按照不同的tabBar确定了主体的文件夹,然后各级页面又分别在各自所属层级的目录下。另外对于页面的命名尽量通俗易懂,这样方便自己对各页面进行查看和管理。
"pages":[
"pages/index/index",
"pages/leader/leader", // 领读人
"pages/leader/stories/stories",
"pages/leader/authors/authors",
"pages/stack/stack", // 分类
"pages/stack/booklist/booklist",
"pages/stack/booklist/bookdetail/bookdetail",
"pages/bookdesk/bookdesk", // 书桌
"pages/mine/mine", // 我的
"pages/mine/news/news",
"pages/logs/logs"
],
![img](https://raw.githubusercontent.com/Hwj1220/wangyi_reading/master/assets/readmeImage/v2-985964c783e7bde42bdae79fb574b532_hd.jpg)
在分类页面下具有多层级的一个页面创建展示:
![img](https://raw.githubusercontent.com/Hwj1220/wangyi_reading/master/assets/readmeImage/v2-19326db440843aa25b219e3fcbc8c63c_hd.jpg)
所以在项目开始时首先思考的就是文件的排版问题,一个合理的结构,能够增强项目的可读性,以后操作和维护也更加方便,能够节约一定的时间。
小技巧: 在创建pages页面时,如果我们在微信开发者程序的app.json文件中创建,就会自动的生成相应的文件夹,就不用我们一个一个去创建了。
### 2、页面布局和样式
小程序属于轻量级的应用,所以在忠于原App的基础上,对某些页面进行了一些调整。另外,在这里所有的页面都是我切的,可能会有人说很多页面都可以引用第三方框架,没有必要写原生代码。其实都没有错,要看自己写小程序是为了什么。我做这款小程序是为了学习小程序的开发,另外自己的前端之旅还是刚刚开启,所以为了在 coding 中锻炼自己对各种结构的敏感性,加深自己对样式属性的理解,我选择了自己写原生代码。
其实第三方框架是非常好的轮子,像微信团队开发的 weui 框架就很好用,它提供了很多的组件,能够让你摆脱切页面的繁琐,减少开发时间。对于 weui 的使用我也不是很熟练,所以在后续的学习中,还会继续修改这个小程序,用不同的方法实现页面。
另外,在命名时,我使用了BEM规范,这样便于对页面结构的理解,使代码更易读。BEM命名法则给我们提供了一个很好的模板,在命名中就能体现各个元素之间的关系,CSS的命名更加语义化,元素更易读懂。而且独一无二的命名方式,使得代码能够得到更好的复用。
stack.wxml
![img](https://raw.githubusercontent.com/Hwj1220/wangyi_reading/master/assets/readmeImage/v2-e9b0e7e2fc3e81b8c25c5b38cb9600d4_hd.jpg)
### 3、使用 easy-mock 造数据
写完基本样式之后,要思考的就是数据问题。我们开发的页面很少有静态的。我们把数据写在页面中没有任何意义还平白增加了工作量。此时我们就需要模拟后台数据,让这些数据能够通过请求渲染到页面上。easy-mock 就给我们提供了一个很好的平台来造假数据,然后生成URL 通过 wx.request() 方法来获取数据,实现页面加载数据。
另外还可以在本地写假数据。今天在阅读别人文章时有看到用require()方式来请求数据的。对于这个不是很懂,通过查询之后�
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
仿网易蜗牛读书小程序,开发工具导入项目即可查看源码分享 小程序是一个易上手的东西, 对于新手来说,多看官方文档,可以初步做出比较完整的小程序,正是因为简单上手,功能实现简单,小程序是越来越火,商业价值也越来越大。 1. 微信web开发者工具:微信小程序官网这是个比较好用的编辑器,对于小程序编辑很方便。 2. 开发文档:微信小程序宝典秘籍 通过这个查找微信小程序的API,组件,框架等等。 3. 图标库: Iconfont-阿里巴巴矢量图标库 这个可以找到自己想要的几乎所有的小图标,十分方便。 4. Easy Mork: easy-mock 用于后台的模拟,得到JSON数据; 5. weui框架引入, 例如个人信息界面,用weui可以很快很方便的做 微信小程序开发和传统的H5开发还是有些不同的, 容易踩坑。 小程序是基于MVVM的的框架,合理利用数据绑定实现界面的更新是很关键的 开发时不要一股脑的写写写,多看看文档,你会发现你不小心原生写了个组件。 进入开发平台,注册项目信息->在编辑器中上传版本->在开发版本中选择提交审核->审核通过->项目上线 更多内容可下载项目源码查看,直接导入即可
资源推荐
资源详情
资源评论
收起资源包目录
仿网易蜗牛读书.rar (88个子文件)
pages
bookdesk
bookdesk.json 2B
bookdesk.js 56B
bookdesk.wxss 1KB
bookdesk.wxml 2KB
index
index.wxml 110B
index.js 386B
index.wxss 95B
stack
stack.wxml 536B
stack.wxss 611B
booklist
booklist.wxss 623B
bookdetail
bookdetail.wxss 53B
bookdetail.js 886B
bookdetail.json 2B
bookdetail.wxml 116B
booklist.wxml 900B
booklist.js 700B
booklist.json 120B
stack.js 540B
stack.json 2B
leader
authors
authors.json 2B
authors.wxss 32B
authors.js 12B
authors.wxml 0B
leader.json 36B
leader.wxss 2KB
leader.js 928B
stories
stories.wxml 2KB
stories.wxss 3KB
stories.js 1KB
stories.json 131B
leader.wxml 1KB
mine
mine.js 216B
mine.json 2B
mine.wxss 2KB
mine.wxml 3KB
news
news.json 131B
news.wxss 755B
news.wxml 599B
news.js 395B
logs
logs.json 52B
logs.js 261B
logs.wxml 192B
logs.wxss 106B
app.json 1KB
project.config.json 461B
assets
icons
lingdu_sel.png 2KB
lingdu.png 1KB
mine_sel.png 1KB
mine.png 1KB
stack.png 1KB
bookdesk.png 1KB
stack_sel.png 1KB
bookdesk_sel.png 1KB
images
thumb.png 2KB
xiala.png 1KB
news.png 4KB
book2.png 336KB
pointer.png 910B
headImage.JPG 24KB
book1.png 113KB
start.jpg 66KB
book3.png 104KB
share.png 2KB
desk.png 293B
mines
news.png 2KB
times.png 2KB
note.png 2KB
fans.png 2KB
booklist.png 524B
sets.png 2KB
invite.png 2KB
update.png 2KB
like.png 2KB
rg.png 1KB
readmeImage
v2-e9b0e7e2fc3e81b8c25c5b38cb9600d4_hd.jpg 24KB
v2-19326db440843aa25b219e3fcbc8c63c_hd.jpg 15KB
v2-37f8891696e8daf279bbfb8c1d73a421_hd.jpg 16KB
data4.gif 494KB
data3.gif 269KB
data.gif 2.22MB
data2.gif 939KB
v2-985964c783e7bde42bdae79fb574b532_hd.jpg 8KB
reading.gif 4.65MB
app.js 1KB
utils
util.js 472B
weui.wxss 18KB
app.wxss 415B
README.md 16KB
共 88 条
- 1
资源评论
大雄是个程序员
- 粉丝: 4283
- 资源: 571
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功