在Ember开始基础js(使用ember-cli)

时间:2014-09-20 10:40:02

标签: ember.js zurb-foundation

在我的项目中,我试图使用Foundation的手风琴,但无济于事。具体来说,我在此处遵循了本指南https://coderwall.com/p/azjwaq,但它不起作用。它仅在我明确刷新页面时才有效,但如果我导航到另一个控制器则停止工作。这是初始化基础5的正确方法吗? 我使用基础5.3.3与ember 1.8.0-beta1和ember-cli 0.44。

编辑: 当心!我设法让它发挥作用。但现在整个应用程序确实真的慢。具体来说,我在app / initializer / foundation.js中有这个初始化器。

import Ember from 'ember';

export default {
  name: 'foundation-config',
  initialize: function() {
    Ember.View.reopen({
      startFoundation: function() {
        Ember.run.scheduleOnce('afterRender', this, function(){
          $(document).foundation();
        });
      }.on('didInsertElement')
    });
  }
};

我做错了吗?

2 个答案:

答案 0 :(得分:1)

也许试试这个:

停止为每个视图初始化Foundation。尝试将包含手风琴的视图扩展到单独的对象,然后扩展它。

App.FoundationView = Ember.View.extend({
    didInsertElement: function () {
        $(document).foundation();
    }
});

App.ViewWhichNeedFoundation = App.FoundationView.extend({
    ...
})

答案 1 :(得分:-2)

简单地初步化基础,手动为我工作的正常方式。就在关闭身体标签之前:     

    
    <script>
    $(document).foundation();
    </script>