- 创建virtual-route实例对象,添加匹配规则
const virtualRoute = new VirtualRoute([
{
ruleName: 'index',
rule: '/'
},
{
ruleName: 'path',
rule: '/path'
},
{
ruleName: 'params',
rule: '/params/:paramName',//传参,必填参数名前面加冒号:
},
{
ruleName: 'notRequired',
rule: '/notRequired/?paramName',//传参,非必填参数名前面加问号?
},
{
ruleName: 'moreParams',
rule: '/moreParams/?paramName@:pm2',//传参多个,必填
},
{
ruleName: 'moreParams',
rule: '/moreParams/?paramName@?pm2',//传参多个,必填&非必填
},
]);
console.log(virtualRoute.location);
/*
isMatched: 是否匹配成功(规则匹配成功&&必填参数都有值返回true)
params: 匹配到的参数(规则匹配成功时获取到的参数)
matchedRuleName: (规则匹配成功就能返回ruleName,此处不校验必填参数是否都有)
*/