Ember 路由中的任意深度斜杠分隔参数值
Arbitrary depth slash-delimited param value in Ember route
我有一条路线定义为:
Router.map(function() {
this.route('folder', { path: '/f/:path' }, function() {} );
});
路线本身为:
export default Ember.Route.extend({
model(params) {
const path = params.path;
console.log(`path=${ path }`);
return path;
}
});
目前:
http://localhost:4200/f/folder
有效但
http://localhost:4200/f/folder/subfolder
抛出 Uncaught UnrecognizedURLError {message: "/f/folder/subfolder", name: "UnrecognizedURLError"}
因为路由器希望我在每个级别定义一条路由。
用例是用户构建任意文件夹树的能力。有办法吗?
我应该在这里多读一段:https://guides.emberjs.com/v2.6.0/routing/defining-your-routes/
我正在寻找的是通配符/通配符路由。
Router.map(function() {
this.route('folder', { path: '/f/*path' });
});
给了我我希望的输出:
path=folder/subfolder
我有一条路线定义为:
Router.map(function() {
this.route('folder', { path: '/f/:path' }, function() {} );
});
路线本身为:
export default Ember.Route.extend({
model(params) {
const path = params.path;
console.log(`path=${ path }`);
return path;
}
});
目前:
http://localhost:4200/f/folder
有效但
http://localhost:4200/f/folder/subfolder
抛出 Uncaught UnrecognizedURLError {message: "/f/folder/subfolder", name: "UnrecognizedURLError"}
因为路由器希望我在每个级别定义一条路由。
用例是用户构建任意文件夹树的能力。有办法吗?
我应该在这里多读一段:https://guides.emberjs.com/v2.6.0/routing/defining-your-routes/
我正在寻找的是通配符/通配符路由。
Router.map(function() {
this.route('folder', { path: '/f/*path' });
});
给了我我希望的输出:
path=folder/subfolder