我有一个特定的用例,我希望在Ember中使用URL哈希来进行路由,并且我希望URL的路径部分也具有一定的动态性。
例如:
localhost:4200/#/properties/edit将与此完全相同:
localhost:4200/about/#/properties/edit或者这个:
localhost:4200/products/widgets/model-5000/#/properties/edit如果在上面这些不同的示例URL之间导航会产生一个完整的页面刷新,尽管URL中的任何散列更改都将保持在“单个页面”上,这将是100%可以接受的。
我希望所有这些URL指向app/index.html文件,让Ember能够“忽略”路径,但我不知道如何配置Ember,以便在为应用程序提供服务时做到这一点。例如,上面的/about场景给出了错误Cannot GET /about。
对于普通的Ember来说,这是可能的吗?还是我需要转向像ember-cli-rails这样的东西,以便在开发中具有更灵活的路由?我假设将它配置为在生产中正常工作是相对简单的,但我也需要一些对开发有用的东西。
发布于 2015-03-19 02:37:47
解决方案是创建一个Ember外接程序:烬-cli-散列-任何地方。
安装后,web服务器将忽略URL的路径部分,并每次提供index.html。
发布于 2015-03-18 15:08:20
是的,您可以使用通配符:通配符-全局路由
从‘Ember’导入ember;从‘./ config /environment’导入配置;
var路由器= Ember.Router.extend({ location: config.locationType });
Router.map(function() {
this.resource('index', { path: "/*wildcard" }, function() {
this.route("properties", function() {
this.route("edit");
});
});
});
export default Router;https://stackoverflow.com/questions/29108248
复制相似问题