avalon 分页组件路由
当在项目中加入mmRouter,路由控制以后,点击分页组件上的按钮会时,路由会自动切换,导致页面显示错误!
关键代码如下:
入口文件
var avalon = require('avalon2')
require('../dist/mmRouter');
require('ms-pager')
var a = require("../test.html");
var b = require("../login.html");
var c = require("../test111.html");
var map = {
'testa' :a,
'testb' : b,
'testc' :c
};
window.vm = avalon.define({
$id: 'test',
main:'',
config: {
totalPages: 10,
showPages: 5,
currentPage:1,
firstText:'首页',
nextText: '下一页',
prevText: '上一页',
lastText:'尾页',
onPageClick:function(){
}
}
})
setTimeout(function(){
window.vm.config = {
totalPages: 10,
showPages: 5
}
}, 1000)
avalon.router.add("/:tab", function (param) {
console.log(param);
vm.main = map[param];
})
avalon.history.start({
root: "/mmRouter",
hashPrefix: ""
})
var hash = location.hash.replace(/#!?/, '')
avalon.router.navigate(hash || '/testa', 2)//默认打开
avalon.scan(document.body)
html文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link href="./dist/pager.css" rel="stylesheet"/>
<script src="./dist/common.js"></script>
<script src="./dist/pager.js"></script>
</head>
<body>
<div class="home-container" ms-controller="test">
<p><a href="#!/testa">测试1</a></p>
<p><a href="#!/testb">测试2</a></p>
<p><a href="#!/testc">测试2</a></p>
<div ms-html="@main"></div>
<wbr ms-widget="[{is:'ms-pager'}, @config]" />
</div>
</body>
</html>
点击测试1,测试2,测试3一切正常
但当点击分页按钮时,就会出现
路由改变了,但怎么在mmrouter中处理啊?
另外,当刚打开页面时,点击分页组件下一页,路由地址直接变为page-3,正常的应该是page-2啊
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论