这部分是每个智能小程序页面的展现模板,类似于 Web 开发中的 HTML,SWAN 模板中使用的标签均为 SWAN 组件规定的标签。
创新互联专注于古浪网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供古浪营销型网站建设,古浪网站制作、古浪网页设计、古浪网站官网定制、小程序定制开发服务,打造古浪网络公司原创品牌,更为您提供古浪网站排名全网营销落地服务。
代码示例
{{item.title}}
{{tag.content}}
点击加载更多
标签可以拥有属性,需要注意的是,swan 中的属性是大小写敏感的,也就是说 class 和 Class 在 swan 中是不同的属性。
代码示例
在开发者工具中打开
在开发者工具中打开
在 WEB IDE 中打开
hello world
hello world
一个文件夹可以有两个 swan 文件。
代码示例
在开发者工具中打开
在开发者工具中打开
在 WEB IDE 中打开
代码示例
Hello My {{ name }}
// xxx.js
Page({
data: {
name: 'SWAN'
}
});
开发者可以通过在元素上添加s-for
指令,来渲染一个列表。
代码示例
{{p.name}}
Page({
data: {
persons: [
{name: 'superman'},
{name: 'spiderman'}
]
}
});
开发者可以通过在元素上添加s-if
指令,来在视图层进行逻辑判断:
代码示例
4G
Wifi
Other
Page({
data: {
is4G: true,
isWifi: false
}
});
详情请参考事件处理。
开发者可以使用bind: + 事件名
来进行事件绑定
代码示例
点击加载更多
Page({
loadMore: function () {
console.log('加载更多被点击');
}
});
目前支持的事件类型有:
类型 | 触发条件 |
---|---|
touchstart | 手指触摸开始 |
touchmove | 手指触摸后进行移动 |
touchend | 手指触摸结束 |
touchcancel | 手指触摸动作被打断,如来电提醒等 |
tap | 手指触摸后马上离开动作 |
当开发者绑定方法到事件,事件触发时,SWAN 会给触发的方法传递事件对象,事件对象因事件不同而不同,目前基础的事件对象结构为:
{
"changedTouches": [{
"clientX": 194,
"clientY": 401,
"force": 0,
"identifier": 0,
"pageX": 194,
"pageY": 401,
"x": null,
"y": null
}],
// 事件触发的属性集合
"currentTarget": {
"dataset": {},
"id": "_9be18",
"offsetLeft": 31,
"offsetTop": 377
},
"detail": {
"x": 194,
"y": 401
},
"target": {
"dataset": {},
"id": "_9be18",
"offsetLeft": 31,
"offsetTop": 377
},
"timeStamp": 10303373,
"touches": [],
// 事件类型
"type": "tap"
}
开发者可以在组件中自定义数据,并在事件发生时,由 SWAN 所在事件对象中,传递给绑定函数。
代码示例
dataset-test
Page({
viewtap: function (event) {
// 输出1
console.log('value is:', event.currentTarget.dataset.swan);
}
});
属性值也可以动态的去改变,有所不同的是,属性值必须被包裹在双引号中, 且引号可加可不加
代码示例
dataset-test // 同
dataset-test
Page({
data: {
test: 1
},
viewtap: function (event) {
// 输出1
console.log('value is:', event.currentTarget.dataset.swan);
}
});
需要注意的是变量名是大小写敏感的,也就是说 test 和 Test 是两个不同的变量。
代码示例
dataset-test
Page({
data: {
test: 1,
Test: 2
},
viewtap: function (event) {
// 输出1
console.log('value is:', event.currentTarget.dataset.swan);
}
});
开发者在接收到触摸类事件后,在事件对象上,可以接收到当前停留在屏幕上的触摸点。
Touch 对象
属性 | 类型 | 描述 |
---|---|---|
pageX , pageY | Number | 距离文档左上角的距离,横向为 X,纵向为 Y |
clientX , clientY | Number | 距离屏幕视口左上角距离,横向为 X,纵向为 Y |
代码示例
viewtouchstart
Page({
viewtouchstart: function (event) {
console.log('value is:', event.touches);
// 输出 clientX: 44,clientX: 47,pageX: 44, pageY: 47
}
});
网页题目:创新互联百度小程序教程:开发.swan文件
本文网址:http://www.36103.cn/qtweb/news21/11371.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联