微信小程序开发之小米商城

桃扇骨 2022-05-09 06:33 587阅读 0赞

小程序开发之小米商城Lite

刚接触小程序不久,感觉相对来说比较简单,就自己花了五六天做了一个项目,因为本身也是米粉,就看中了小米的微信小程序(可怜国庆撸了几天的代码,哈哈),话不多说,先上效果图吧。
算了算了。本来还打算上gif图,但是太难搞了,说明一下吧。要看效果的等下我贴出项目github地址来,自己去看吧

1. 项目模块

整个项目大致分为首页,分类,发现,购物车,我的五个模块,其实就是底部导航条的五块,

1)首页

首页的重点也就是一个轮播图,然后一个全局的底部导航条,其实微信小程序都给我们提供的组件。像轮播图组件 swiper-item,然后底部导航条在app.json中设置tabBar都可以实现,前面我还在纠结自己如何实现一个底部导航条,然后后面各种纠结,其实就简简单单的配置就行,所以说文档很重要。贴一张首页图吧
在这里插入图片描述

2)分类

分类这一个模块,其实是挺让我难下手的,先给张图你就明白了
在这里插入图片描述
看上面图就知道,第一个是数据的问题,对于一个学前端的人来讲,数据是非常重要的,因为前端人员就是要对后台提供的数据,以各种形式,各种界面来显示,让用户更好的去使用,去体验,所以摆在我前面的第一个问题就是我没有数据,然后第二个问题,布局问题,我侧导航条可以自己移动,右边也可以自己移动,互不干扰,然后我琢磨了一段时间,将左边侧导航栏设置为positoin:absolute;脱离文档流,再加上overflow:scroll;就可以了,然后::-webkit-scrollbar{display:none;}把滚动条样式去除,就都实现了,做出来之后满足感爆棚,然后第一个问题我新建了一个js文件,在里面造json数据,这个json数据挺复杂了,太多括号,就不贴出来了,然后再使用小程序提供的模板template组件循坏放入,这个时候,难点又出现了,因为小程序对于循坏渲染的例子太单一而且简单,就只有对单一josn的渲染,什么是单一的json,就比如:

  1. [
  2. {
  3. name:'张三'
  4. age:24
  5. },
  6. {
  7. name:’李四',
  8. age:23
  9. }
  10. ]

这种就是单一的json,就一层

  1. [
  2. {
  3. name:'张三'
  4. age:24,
  5. interest:
  6. [
  7. { sports:'足球'},
  8. { sports:'篮球'}
  9. ]
  10. },
  11. {
  12. name:’李四',
  13. age:23,
  14. interest:
  15. [
  16. { sports:'足球'},
  17. { sports:'篮球'}
  18. ]
  19. }
  20. ]

差不多就这个意思,多层的在文档中是没有说明的。

  1. <view style='padding-top:10rpx;' wx:for='{
  2. {list}}' wx:key='{
  3. {index}}' id='nav-{
  4. {index}}' wx:for-item="itemName">
  5. <view wx:for='{
  6. {itemName.content}}' wx:key='{
  7. {index}}'>
  8. <template is='categoryItem' data='{
  9. {...item}}'></template>
  10. </view>
  11. </view>

纠结了好久,传入了模版,我这里循坏了两次,去获得里面的值,详细看json数据结果,反正意思就是不断去调试,循坏一次,只能获得第一层的数据,循环了两次,获得第二层的,加入你说我只循环一次,然后通过 点(.)去吧数据点出来,这是不可能的,我试过了。
然后布局都出来了,又碰到了怎么锚点滑动,然后搞了好久,发现小程序有这个东西,通过scroll-view组件里面的scroll-into-view的属性,然后通过设置id,绑定

  1. <scroll-view scroll-y="true" style='height:100%' scroll-with-animation="true" scroll-into-view='{
  2. {toview}}' >
  3. <view style='padding-top:10rpx;' wx:for='{
  4. {list}}' wx:key='{
  5. {index}}' id='nav-{
  6. {index}}' wx:for-item="itemName">
  7. <view wx:for='{
  8. {itemName.content}}' wx:key='{
  9. {index}}'>
  10. <template is='categoryItem' data='{
  11. {...item}}'></template>
  12. </view>
  13. </view>
  14. </scroll-view >

其中scroll-y=”true”允许竖向滚动 height要设置,你可以试试不加这个 scroll-with-animation=“true” 滑动动画,这里面同通过js动态绑定id,使id值给上面的toview相同时,就会锚定定位,搞了好久,心累,不过效果出来了还是很爽的,哈哈哈。

3)发现

在这里插入图片描述

发现模块没什么讲的,也加入一个template

4)购物车

在这里插入图片描述

5)我的

在这里插入图片描述

我的这里使用了小程序的API获得用户头像,名字,挺简单的

整体的结果上述所讲,其实就大部分都是布局问题,没有很多的用到小程序的API,后续慢慢的加上去,因为那才是小程序的重点,然后ajax也没有用到,只是模拟数据什么的,以后加吧。

" class="reference-link">2.项目结构在这里插入图片描述

如上图所示,datas放一些模拟的数据,json。
pages ——————页面
static——————静态资源(图片)
util——————— 工具

最后奉上git 小米商城Lite(觉得不错,帮我star一下,万分感谢!)

发表评论

表情:
评论列表 (有 0 条评论,587人围观)

还没有评论,来说两句吧...

相关阅读

    相关 程序开发小米商城

    小程序开发之小米商城Lite 刚接触小程序不久,感觉相对来说比较简单,就自己花了五六天做了一个项目,因为本身也是米粉,就看中了小米的微信小程序(可怜国庆撸了几天的代码,哈