微信小程序——代码构成

通过上一章讲解,我们了解到如何初始化一个小程序项目,这里是官方给到demo地址,通过demo来看教程更方便于我们理解项目架构。

由四种文件构成:

  1. .json 后缀的 JSON 配置文件
  2. .wxml 后缀的 WXML 模板文件
  3. .wxss 后缀的 WXSS 样式文件
  4. .js 后缀的 JS 脚本逻辑文件

json配置

  • app.json相当于一个项目的路由机制,以及全局设置,含义和简单示例如下,其他详细配置参考小程序的配置 app.json
  1. pages字段 —— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录。
  2. 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" })
  }
})

  

原文地址:https://www.cnblogs.com/xiaojun-zxj/p/8568441.html