路由
Tui Framework
页面为局部渲染,除了主页面index.html是完整的html之外,其他页面均是div块级,当请求新页面,自动渲染到index.html中。
这意味着我们如果想混合开发app应用,我们也可以把所写的app html代码全部放在服务器端,只要在app首页执行跳转即可。如果想打包到手机中使用,
服务器端需要开启跨域权限。
Tui Framework
的路由也与传统的路由不同,不需要过多复杂的配置,只需要在标签中定义需要跳转的href
地址,添加.route
类,就可以实现。例如:
<a href="message.html?id=1" class="link_item route">消息</a>
这时点击a就会跳转到message.html页面。
方法
1.下一页
:在标签中增加.route
的css类,href属性为下一页地址,当点击该a标签时实现跳转到下一页。
<a href="message.html?id=1" class="link_item route">消息</a>
如果我们把html文件打包到手机中,通常情况,我们会需要向跳转的页面传值提供两种传值方式:
1.通过在href中的message.html?id=1网址传值
2.也提供标签属性params
只需要给params属性中设置需要传送的值即可,params权重比url高,可覆盖url中传值。
<a href="order.html" params='{order_id: 15}' class="link_item route">订单详情</a>
这样我们就可以在order订单详情页,通过request获取order_id的值。 order.html
<script>
var order_id = request.order_id; //获取order_id
</script>
2.自定义下一页
:除了含有.route
类的a标签外,还提供自定义下一页方法:
t.toNextPage(url, data); //参数url为下一页的地址,data为需要传递的数据,获取数据方法同上。
3.返回上一页
:
3.1 在标签中添加.back
的css类,url属性为上一页地址,当点击该a标签时实现返回上一页。
<div class="left">
<a href="index.html" class="back link">
<i class="icon icon-back" style="transform: translate3d(0px, 0px, 0px);"></i>
</a>
</div>
3.2 除了自定义的返回地址之外,框架还提供自动返回功能。只需要去除href或者设置成”“即可实现自动返回上一页,并且携带当时传递参数的功能。
<div class="left">
<a class="back link">
<i class="icon icon-back" style="transform: translate3d(0px, 0px, 0px);"></i>
</a>
</div>
4.自定义上一页
:除了含有.back
类的a标签外,还提供自定义上一页方法:
t.toPrePage(url, data); //参数url为上一页的地址,data为需要传递的数据,获取数据方法同上。
事件
标签中局部事件实例
<a href="order.html" params='{order_id: 15}' onJump="setval" class="link_item route">订单详情</a>
<script>
//配置onJump触发事件
function setval(){
...
}
</script>
js中局部事件实例
t.onBack = function(){
//处理返回前事件
}
t.onJump = function(){
//处理下一页返回事件
}
局部事件说明
事件名称 | 事件对象 | 事件描述 |
---|---|---|
onJump | .route .back | 此为标签中使用,当页面跳转前触发,为路由标签使用,此事件为局部事件,不可在全局事件中使用。 |
onBack | t | 当页面返回上一页前触发,此事件为局部事件,不可在全局事件中使用。 |
onJump | t | 当页面跳转下一页前触发,此事件为局部事件,不可在全局事件中使用。 |
添加全局事件实例:
t.eventAdd(action, onevent); //增加全局事件,事件对象为`.page`。参数action为事件名称,onevnet为事件委托。
全局事件说明
事件名称 | 事件对象 | 事件描述 |
---|---|---|
beforePre | .page | 返回上一页之前触发。 |
afterPre | .page | 返回上一页完成之后触发。 |
beforeNext | .page | 跳转到下一页之前触发。 |
afterNext | .page | 跳转到下一页完成之后触发。 |
load | .page | 页面加载完成之后触发 |