1

一周前我开始学习 Ember.js,我正在尝试将Bootstrap Material Design集成到我的应用程序中。我已阅读说明我需要致电的文档:

$.material.init()

我试图创建一个实例初始化程序并将此代码放入,但什么也没发生。

谁能帮我在我的 Ember 应用程序中初始化材质效果?

4

2 回答 2

0

我使用 Ember 2.12.01 的解决方案是$.material.init();

var initMD = function() {
    $(document).ready(function(){
        $.material.init();
    })
}

并在我的路由器中使用didTransition操作调用此函数

export default Ember.Route.extend({
    actions: {
        didTransition() {
            initTheme();
            return true; // Bubble the didTransition event
        }
    },
    [...]
}
于 2017-06-28T11:12:12.837 回答
0

我找到了答案。根据 Ember 文档,我们可以使用应用程序实例初始化程序,它可以在我们的应用程序加载时运行代码。

应用程序实例初始化程序在加载应用程序实例时运行。它们提供了一种配置应用程序初始状态的方法,以及设置应用程序实例本地的依赖注入(例如 A/B 测试配置)。

所以,我刚刚使用 ember-cli 生成了一个新的实例初始化程序

ember generate instance-initializer bootstrap-material

并调用了Bootstrap Material Design JS 函数:

// app/instance-initializers/bootstrap-material.js
import Ember from 'ember'

export function initialize(applicationInstance) {
    Ember.$.material.init();
};

export default {
    name: 'bootstrap-material',
    initialize: initialize
};

这就是我为让它工作所做的一切。希望能帮助到你。

于 2016-01-18T19:24:12.157 回答