通过上一章讲解,我们了解到如何初始化一个小程序项目,这里是官方给到demo地址,通过demo来看教程更方便于我们理解项目架构。
由四种文件构成:
- .json 后缀的 JSON 配置文件
- .wxml 后缀的 WXML 模板文件
- .wxss 后缀的 WXSS 样式文件
- .js 后缀的 JS 脚本逻辑文件
json配置:
- app.json相当于一个项目的路由机制,以及全局设置,含义和简单示例如下,其他详细配置参考小程序的配置 app.json:
- pages字段 —— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录。
- window字段 —— 小程序所有页面的顶部背景颜色,文字颜色定义在这里的
{ "pages":[ "pages/index/index", "pages/logs/logs" ], "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "WeChat", "navigationBarTextStyle":"black" } }
- project.config.json配置针对各自喜好做一些个性化配置,例如界面颜色、编译配置等等,小程序开发者工具在每个项目的根目录都会生成一个 project.config.json,你在工具上做的任何配置都会写入到这个文件,当你重新安装工具或者换电脑工作时,你只要载入同一个项目的代码包,开发者工具就自动会帮你恢复到当时你开发项目时的个性化配置,其中会包括编辑器的颜色、代码上传时自动压缩等等一系列选项。参考文档 开发者工具的配置
- page.json用来表示 pages/logs 目录下的 logs.json 这类和小程序页面相关的配置,page.json是定义全局,而page.json是定义某个页面。参考文档 小程序的配置 page.json
WXML,WXSS,JS模版
- WXML学前端的应该都知道HTML + CSS + JS,那么就不难理解wxml,wxss,js了,给个官网例子,很容易理解和上手使用,特别是对于学过react native的人来说,一看就明白
<view class="container"> <view class="userinfo"> <button wx:if="{{!hasUserInfo && canIUse}}"> 获取头像昵称 </button> <block wx:else> <image src="{{userInfo.avatarUrl}}" background-size="cover"></image> <text class="userinfo-nickname">{{userInfo.nickName}}</text> </block> </view> <view class="usermotto"> <text class="user-motto">{{motto}}</text> </view> </view>
- WXSS和CSS相比,无需再根据屏幕尺寸换算适配方式了,WXSS在底层支持新的尺寸单位 rpx,省去了麻烦的换算步骤。和前边 app.json, page.json 的概念相同,app.wxss是定义全局样式,page.wxss是定义某个页面样式。此外,WXSS仅支持不放CSS选择器。更详细的文档可以参考 WXSS
- JS里是写一些逻辑来显示交互效果的,语法上也很容易理解,看例子吧
//WXML <view>{{ msg }}</view> <button bindtap="clickMe">点击我</button> //JS Page({ clickMe: function() { this.setData({ msg: "Hello World" }) } })
请发表评论