我从Ember开始。我按照文档安装。当我去http://my-app:4200时,我会看到“我的应用程序”。但是,当我转到http://my-app:4200/boxes时,视图没有显示boxes.hbs模板的内容(“Hello from the boxes template!”) - 任何想法为什么不(下面的文件)?
应用程序/ router.js:
import Ember from 'ember';
import config from './config/environment';
var Router = Ember.Router.extend({
location: config.locationType
});
export default Ember.Router.extend().map(function(){
});
Router.map(function() {
this.route('boxes', { path: '/boxes' });
});
应用程序/路由/ application.js中:
export default Ember.Route.extend({
setupController: function(controller) {
controller.set('title', "My Application");
}
});
app / templates / application.hbs:
<h2>{{title}}</h2>
<div class="main">
{{outlet}}
</div>
app / templates / boxes.hbs:
<p>Hello there from the boxes template!</p>
答案 0 :(得分:0)
您的问题可能是您的位置类型错误。看看here的差异。对于路由设置,Ember CLI默认为auto
,这通常会回退到基于散列的路由,因为它是跨浏览器最兼容的。这意味着Ember希望您转到#/boxes
而不是/boxes
。因此,您可以在手动输入网址时将哈希值放在网址中,或者只需将locationType
更改为history
文件中的config/environment.js
即可。 (请注意,基于历史记录的路由在IE&lt; 10中不起作用。)