Mini Project[微信小程序]首页投稿(暂停使用,暂停投稿)互联网科技

来写点微信小程序吧:D) ---- 分析小程序目录结构与配置

2017-01-15  本文已影响541人  张照博

开篇语

开篇语已经在热身阶段说过了,所以就不重复了。有兴趣的读者移步
来写点微信小程序吧:D) ~~~(热身阶段)
以及前面借鉴小程序开发官方文档的简易教程写的总纲
来写点微信小程序吧:D) ~~~狂奔阶段

上一张学长的图片镇楼,下面直接上开发过程笔记。

张小龙学长

正文

一、 小程序主体部分由三个文件组成,必须放在根目录(即最外层目录)下,分别是:

  1. app.js
    小程序逻辑
  1. app.json
    小程序公共设置
  1. app.wxss
    小程序公共样式表

而在根目录之下,就是各个分开的页面的文件,由四个基本文件组成。

js
页面逻辑

  1. wxml
    页面结构
  1. wxss
    页面样式表
  1. json
    页面配置
如图

二、 在app.js中配置的是整个小程序的格调。决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。

配置如上

简单应用如下:

{
  "pages": [
    "pages/index/index",
    "pages/logs/index"
  ],
  "window": {
    "navigationBarTitleText": "The-First-Program-of-ZhangZhaobo"
  },
  "tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首页"
    }, {
      "pagePath": "pages/logs/logs",
      "text": "日志"
    }]
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000

  },
  "debug": true
}
演示效果如图

1、 pages
接受一个数组,每一项都是字符串,来指定小程序由哪些页面组成。每一项代表对应页面的【路径+文件名】信息,数组的第一项代表小程序的初始页面。小程序中新增/减少页面,都需要对 pages 数组进行修改。

文件名不需要写文件后缀,因为框架会自动去寻找路径.json,.js,.wxml,.wxss的四个文件进行整合。

如开发目录为:

pages/index/index.wxml
pages/index/index.js
pages/index/index.wxss
pages/logs/logs.wxml
pages/logs/logs.js
app.js
app.json
app.wxss

则,我们需要在 app.json 中写

{
  "pages":[
    "pages/index/index"
    "pages/logs/logs"
  ]
}```


![结构如图](http://upload-images.jianshu.io/upload_images/3810775-124a952b50057880.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

>2、 window
用于设置小程序的状态栏、导航条、标题、窗口背景色

![window的属性列表](http://upload-images.jianshu.io/upload_images/3810775-d43cef5050587c85.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

>下列代码有如图所示的效果:

{
"window":{
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black",
"navigationBarTitleText": "微信接口功能演示",
"backgroundColor": "#eeeeee",
"backgroundTextStyle": "light"
}
}


![图片来自微信官文](http://upload-images.jianshu.io/upload_images/3810775-21212db1b4fb7f44.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

>3、 tabBar
如果我们的小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),那么我们可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。

>tabBar 是一个数组,只能配置最少2个、最多5个 tab,tab 按数组的顺序排序。


![图片来自微信小程序官文](http://upload-images.jianshu.io/upload_images/3810775-98bc1b69393fc888.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
属性说明:

>4、 networkTimeout
可以设置各种网络请求的超时时间。

![属性说明](http://upload-images.jianshu.io/upload_images/3810775-3832b5eed3e7937b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


---------------------------
>三、 page.json
每一个小程序页面也可以使用.json文件来对本页面的窗口表现进行配置。 页面的配置比app.json全局配置简单得多,只是设置 app.json 中的 window 配置项的内容,页面中配置项会覆盖 app.json 的 window 中相同的配置项。

>页面的.json只能设置 window 相关的配置项,以决定本页面的窗口表现,所以无需写 window 这个键,如:

![Page.json的属性说明,来自官文](http://upload-images.jianshu.io/upload_images/3810775-7df1a4e25b33d7d8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


![效果演示图](http://upload-images.jianshu.io/upload_images/3810775-bc18b3debeb5d382.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)



![修改并且覆盖app.json的设置后的颜色](http://upload-images.jianshu.io/upload_images/3810775-ed6d7f3258ba9597.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

#结束语
>小程序算是假期的一个调剂吧,不然真的就是天天看小说,看视频的糜烂生活了。所以要是大家有兴趣的话,可以关注一下我的进度。当然,小程序不是我的全部,寒假清单里可没有小程序的容身之地。所以可能会有存在时断时续的状况,不过这都不是问题。后面我也会持续的跟进我对官方文档的解读进度,对Javascript理解不深,所以难免有的地方会存在一些错误,敬请谅解,不过基本上每一个原创点都是经过我自己的调试Debug,高手别来笑话我这些低端,毕竟目前我还是很菜的。OK,简书写完了。我仿佛已经听到了Keep在召唤我。回家了就要按时睡觉吗~~ ~ ~搞完活动碎觉咯~ ~

#个人宣言
>知识传递力量,技术无国界,文化改变生活!
上一篇下一篇

猜你喜欢

热点阅读