代码拉取完成,页面将自动刷新
同步操作将从 Rezero/route.js 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
<script type="text/javascript" src="../dist/route.all.min.js"></script>
<script src="../lib/ramda.min.js"></script>
<script src="../lib/jueji.js"></script>
<script src="../js/route.js"></script>
内含函数流,中断,异步功能
var s = J.stream;
var ds = J.dostream;
var dofn = route.route([
//解析URL参数并放到ctx.query中
//nextp 代表执行下面的规则
s(route.queryStringG,J.ctx("query"),route.nextp)
//匹配/hello 匹配失败继续向下执行
,s(route.nameP("/hello"),domlog)
,s(route.nameP("/"),domlog)
,s(route.paramP("/:a/:b"),domlog)
,s(route.nameP("/hello"),domlog)
,s(route.startP("/yibu"),R.tap(loadState),yibutest,domlog)
,s(diyP,domlog)
,domlog404
]);
dofn("/hello");
//监控hash变化 获取URL执行dofn
ds(null,route.hashMilldam,dofn);
//利用H5 api改变URL 放入浏览器历史记录
//需要引入文件 /js/h5routeMilldam.js
ds(null,h5r.h5routeMilldam,dofn);
var fn=J.stream(fn1,fn2,fn3);
fn(arg);
约等同于
var ctx={};
var fn1r=fn1(arg,ctx);
var fn2r=fn2(fn1r,ctx);
var fn3r=fn3(fn2r,ctx);
return fn3r;
中断处理 比如fn1
遇到业务错误不需要执行后面的函数
fn1
返回 J.left(数据)
即可
异步处理 fn2
需要请求接口获得数据之后交给fn3
处理
fn2返回J.milldam即可 详见在线demo
426566496
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。