从零开始的微信小程序线上商城开发(一)

今天开始制作一款微信小程序,一方面是巩固所学,一方面也在查漏补缺,准备尽可能的将所有电商功能模块都做出来,首先是准备工作。

这是微信小程序开发文档,下载微信开发者工具,我的开发者工具版本为1.03.2006090(突然改了界面好不习惯),UI库我选择了Vant Weapp。准备就绪,出发!

1、新建项目

打开微信开发者工具,点击新建项目进入以下界面

  • 项目名称:填写你的项目名称
  • 目录:选择项目保存的路径
  • AppID:填写appid,若无可使用测试号
  • 开发模式:小程序
  • 后端服务:我这里选择不使用云服务,因为还没有了解云开发

点击新建按钮进入以下界面

 这是微信官方的HelloWorld示例,项目包含以下部分:

  • pages  存放页面文件
  • utils  存放工具文件
  • app.js  小程序启动逻辑
  • app.json  小程序公共配置
  • app.wxss  小程序公共样式表
├── app.js
├── app.json
├── app.wxss
├── pages
│   │── index
│   │   ├── index.wxml
│   │   ├── index.js
│   │   ├── index.json
│   │   └── index.wxss
│   └── logs
│       ├── logs.wxml
│       └── logs.js
└── utils

2、添加底部tab栏 

首先先下载两个图标,因为tabbar不支持网络图片,这里我选择去iconfont下载图标,建议尺寸为81px*81px。下载后在小程序根目录下新建static/img文件夹,把刚刚下载的图标存进img文件夹中。

接着配置tabbar,打开app.json,配置项如下:

属性类型必填描述最低版本
pagesstring[]页面路径列表 
windowObject全局的默认窗口表现 
tabBarObject底部 tab 栏的表现 
networkTimeoutObject网络超时时间 
debugboolean是否开启 debug 模式,默认关闭 
functionalPagesboolean是否启用插件功能页,默认关闭2.1.0
subpackagesObject[]分包结构配置1.7.3
workersstringWorker 代码放置的目录1.9.90
requiredBackgroundModesstring[]需要在后台使用的能力,如「音乐播放」 
pluginsObject使用到的插件1.9.6
preloadRuleObject分包预下载规则2.3.0
resizablebooleanPC 小程序是否支持用户任意改变窗口大小(包括最大化窗口);iPad 小程序是否支持屏幕旋转。默认关闭2.3.0
usingComponentsObject全局自定义组件配置开发者工具 1.02.1810190
permissionObject小程序接口权限相关设置微信客户端 7.0.0
sitemapLocationstring指明 sitemap.json 的位置 
stylestring指定使用升级后的weui样式2.8.0
useExtendedLibObject指定需要引用的扩展库2.2.1
entranceDeclareObject微信消息用小程序打开微信客户端7.0.9
darkmodeboolean小程序支持 DarkMode2.11.0
themeLocationstring指明 theme.json 的位置,darkmode为true为必填开发者工具 1.03.2004271
lazyCodeLoadingstring配置自定义组件代码按需注入2.11.1
singlePageObject单页模式相关配置2.12.0

pages属性如下:

"pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],

这表示小程序有两个页面,一个index,另一个logs,它与资源管理器中文件相对应:

删除时需要将两处都删除,否则报错。

我这边准备添加一个个人中心页面,先在pages属性中新增一行"pages/user/user",编译后会该代码会匹配pages文件夹下的user页面文件,如果不存在会自动添加。

然后添加tabBar属性进行配置,helloworld示例中未配置,具体配置及注释如下图:

"tabBar": {
    "color": "#000000",  //tab 上的文字默认颜色,仅支持十六进制颜色
    "selectedColor": "#00BFFF", //tab 上的文字选中时的颜色,仅支持十六进制颜色
    "backgroundColor": "#FFFFFF",  //tab 的背景色,仅支持十六进制颜色
    "borderStyle": "black",  //tabbar 上边框的颜色, 仅支持 black / white
    "position": "bottom",  //tabBar 的位置,仅支持 bottom / top
    "custom": false,  //自定义tabBar
    "list": [  //tab 的列表,最少 2 个、最多 5 个 tab
      {
        "pagePath": "pages/index/index",  //页面路径,必须在 pages 中先定义
        "text": "首页",  //tab 上按钮文字
        "iconPath": "static/img/index.png",  //图片路径,不支持网络图片,当 position 为 top 时,不显示 icon
        "selectedIconPath": "/static/img/selectedIndex.png"  //选中时的图片路径,不支持网络图片,当 position 为 top 时,不显示 icon
      },
      {
        "pagePath": "pages/user/user",
        "text": "个人中心",
        "iconPath": "static/img/user.png",
        "selectedIconPath": "/static/img/selectedUser.png"
      }
    ]
  }

以上代码中的注释便于查看,实际使用中json格式不可以注释 

编译后效果如下图:

 然后我将pages属性中的logs路径及pages文件夹下的logs文件删除,把index页面的内容包括wxml和wxss以及js的事件函数全部删除,下一篇开始设计开发首页。

ps:第一次写这样的博客,旨在整理大脑里杂乱无章的东西。本系列内容算是自己的总结,主要面向初学者。如果能给新人一些帮助我会很高兴,如果大佬看到了能指出文中某些不足那再好不过。

成长源于失败!

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
├── api │   └── api.js //接口 ├── app.wpy //入口文件 ├── components //组件 │   ├── address_add.wpy //新增地址组件 │   ├── address_edit.wpy //编辑地址组件 │   ├── address_list.wpy //地址列表组件 │   ├── bomb_screen.wpy //首页弹屏组件 │   ├── collection_list.wpy //收藏列表组件 │   ├── comment_list.wpy //评论列表组件 │   ├── common //公共组件 │   │   ├── bottomLoadMore.wpy //底部加载更多组件 │   │   ├── placeholder.wpy //空列表显示组件 │   │   ├── timer.wpy //倒计时组件 │   │   ├── wepy-area-picker.wpy //省市区组件 │   │   ├── wepy-sign-time.wpy //签到组件 │   │   └── wepy-swipe-delete.wpy //左滑删除组件 │   ├── discover.wpy //发现列表 │   ├── filterSlider.wpy //筛选右侧栏组件 │   ├── filter_bar.wpy //分类排序组件 │   ├── order_item.wpy //订单列表组件 │   ├── points_detail.wpy //列表组件 │   ├── points_rule.wpy //列表组件 │   ├── rate.wpy //评分组件 │   ├── search.wpy //搜索组件 │   ├── shop_cart.wpy //购物车组件 │   ├── shop_grid_list.wpy //矩阵列表 │   ├── shop_item_list.wpy //条形列表 │   └── tab.wpy //选项卡组件 ├── images //图片文件夹 ├── pages //页面 │   ├── address.wpy //地址 │   ├── classify.wpy //分类 │   ├── collection.wpy //收藏 │   ├── comfire_order.wpy //确认订单 │   ├── comment.wpy //评论列表 │   ├── comment_add.wpy //添加评论 │   ├── exchange_goods.wpy //换货 │   ├── filter.wpy //筛选 │   ├── goods_detail.wpy //商品详情 │   ├── home.wpy //首页 │   ├── home_detail.wpy //首页详情 │   ├── info.wpy //我的 │   ├── logistics.wpy //物流 │   ├── messages.wpy //我的消息 │   ├── order.wpy //订单列表 │   ├── order_detail.wpy //订单详情 │   ├── pay_success.wpy //支付结果 │   ├── points.wpy //积分 │   ├── points_more.wpy //更多积分 │   ├── points_rule.wpy //积分规则 │   ├── register.wpy //注册 │   ├── reorder.wpy //-- │   ├── replenishment_goods.wpy //补货 │   ├── search.wpy //搜索 │   ├── setting.wpy //设置 │   ├── shop_cart.wpy //购物车 │   ├── sign_in.wpy //签到 │   ├── test.wpy //--- │   └── wholesale.wpy //现货批发 ├── plugins //插件 │   └── wxParse //富文本 │   ├── html2json.js │   ├── htmlparser.js │   ├── showdown.js │   ├── wxDiscode.js │   ├── wxParse.js │   ├── wxParse.wxml │   └── wxParse.wxss ├── styles //样式 │   ├── base.less │   ├── icon.less // 图标文件 │   └── style.less └── utils //工具类 ├── constant.js //常量 ├── md5.js //md5 ├── regions.js //省市区数据 ├── tip.js //提示弹框组件 ├── util.js //工具 └── wxRequest.js //ajax请求

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值