主页
分类
关于
小程序 逻辑与界面(快速入门)
小程序学习笔记
逻辑层
- 小程序不是运行在浏览器中, 没有BOM和DOM对象
- 小程序的JS有一些额外的成员
- App 方法 用于定义应用程序实例对象
- Page 方法 用于定义页面应用程序实例对象
- getApp 方法 用来获取全局应用程序对象
- getCurrentPages 方法 用来获取当前页面的调用栈 (数组最后一个就是当前页面)
- wx对象 用来提供核心API
界面层
数据绑定
wxss
<!-- 框架最大的特点就是让开发者按照特定的方式编写代码 -->
<!-- 数据在哪 (当前页面对象的data属性中) 绑定到哪 (想绑定到哪里哪里就用{{ }}输出) -->
<view class="container"> <!-- 这种{{}}的语法叫mustache --> <text>{{ message }}</text> <text>{{ person.Snumber }}</text> <text>{{ person.Sname }}</text>
<!-- {{ }}语法可以用在: 类似innerHTML 元素的属性上 不能用在标签名和属性名上 --> <view class="ha {{ viewClassName }}"></view>
<!-- 可以直接使用字面量和简单的逻辑运算符 --> <text>{{ "my name is Stitch" }}</text> <text>{{ 333 }}</text> <text>{{ 2+1 }}</text> <!-- <text>{{ 333 > 33 ? '你死了' : '你活了' }}</text> -->
<!-- 使用{{ }}语法解析就不会误解true/false --> <checkbox checked="{{ false }}"></checkbox>
</view>
|
wxss
.sdq{ display: flex; color: #aaa; }
|
js
Page({ data: { message: "我叫史迪奇", person:{ Sname: "史迪奇", Snumber: 626, }, viewClassName: "ha" } })
|
列表渲染
wxss
<view wx:for="{{ list }}">{{ item.name }}</view>
|
js
Page({ data: { list:[ { name: "sdq", }, { name: "sdz", } ] } })
|
事件处理
wxss
<view bindtap="onclick">点我</view> <input type="text" bindinput="onclick" />
|
js
Page({ onclick:function(){ console.log('点击了') } })
|
事件冒泡
- 冒泡事件: 当一个组件上的事件被触发后, 该事件会向父节点传递
- 非冒泡事件: 当一个组件上的事件被触发后, 该事件不会向父节点传递
事件传参
wxss
<button bindtap="Stitch" data-name="史迪奇">点我</button> <button bindtap="Stitch" data-name-sdz="史迪仔">点我</button>
|
js
Page({ Stitch:function(){ console.dir(e.target.dataset) } })
|
单个数据流
wxss
作者: 我叫史迪奇
本文来自于:
https://sdq3.link/Applet-logic-interface.html博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议