0

我有路由处理:

'route': function(data) {
  if (data.widget) return;
  this.handle_route(data);
},
':widget route': function(data) {
  if (data.sub) return;
  this.handle_route(data);
},
':widget/:sub route': function( data ) {
  if (data.id) return;
  this.handle_route(data);
},
':widget/:sub/:id route': function(data) {
  this.handle_route(data);
}

但是当我打开localhost/#!profile/log&flag=alpha并刷新页面时,页面的网址变成了localhost/#!profile%2Flog=&flag=alpla

如果我注释掉:

// If no route was matched, it is parsed as a `&key=value` list.
if (url.charAt(0) !== can.route._querySeparator) {
  url = can.route._querySeparator + url;
}

它工作正常。有什么办法不直接接触这个 can.jquery-1.1.5.js 文件吗?还是canjs的deparam方法的问题?

4

0 回答 0