设置基本Ember应用程序时出现问题

时间:2015-04-25 22:33:33

标签: ember.js

我从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>

1 个答案:

答案 0 :(得分:0)

您的问题可能是您的位置类型错误。看看here的差异。对于路由设置,Ember CLI默认为auto,这通常会回退到基于散列的路由,因为它是跨浏览器最兼容的。这意味着Ember希望您转到#/boxes而不是/boxes。因此,您可以在手动输入网址时将哈希值放在网址中,或者只需将locationType更改为history文件中的config/environment.js即可。 (请注意,基于历史记录的路由在IE&lt; 10中不起作用。)