2014-10-03 53 views
0

我卡在這裏...使用Ember CLI的Ember引導程序;不能讓波普組件工作

http://ember-addons.github.io/bootstrap-for-ember/#/show_components/popover顯示文件,說明這應該如何工作...下面引用可能是我不瞭解的一點(這是一個有點混亂,因爲這一切都提到了提示,而不是popovers,但我正在做一個飛躍,因爲它是所有這一切都與同一個文檔中...)

對於酥料餅的支持,需要適應的應用路線和 添加一個命名插座到您的主要模板,並引用一個控制器 ,從Bootstrap.TooltipBoxController

//創建您的應用程序的一些控制器,它引用 Bootstrap.TooltipBoxController App.TooltipBoxController = Bootstrap.TooltipBoxController

//Application route App.ApplicationRoute = Ember.Route.extend({ 
    renderTemplate: function() { 
     // Render default outlet 
     this.render(); 
     // render extra outlets 
     var controller = this.controllerFor('tooltip-box'); 
     this.render("bs-tooltip-box", { 
      outlet: "bs-tooltip-box", 
      controller: controller, 
      into: "application" // important when using at root level 
     }); 
    } }); 

那麼好吧,所以在模板/ application.hbs我加入此位:

{{outlet bs-tooltip-box}} 

然後,在路線/ application.js中我加它說:

renderTemplate: function() { 
    // Render default outlet 
    this.render(); 
    // render extra outlets 
    var controller = this.controllerFor('tooltip-box'); 
    this.render("bs-tooltip-box", { 
     outlet: "bs-tooltip-box", 
     controller: controller, 
     into: "application" // important when using at root level 
    }); 
    }, 

可以預見,在重建時,我收到一個錯誤,名爲'tooltip-box'的控制器不存在。所以我創建一個: 燼控制器工具提示框 好吧,太好了,現在它不會在那個部分嘔吐。

現在,這裏的東西都橫着走的,我...我試圖做到這一點:

//Create some controller in your app that references _Bootstrap.TooltipBoxController_ 
App.TooltipBoxController = Bootstrap.TooltipBoxController 

所以我假設是,而不是生成的藍圖:

import Ember from 'ember'; 

export default Ember.Controller.extend({ 
}); 

猜測需要說這樣的事情??:< - 這是我卡

import Bootstrap from 'somewhere I cant seem to figure out'; 

export default Bootstrap.TooltipBoxController.extend({ 
}); 

其他信息: 我添加了這一個模板遭到其他方式做工精細:

<h2 {{bs-bind-popover testme}}>Click for a popover</h2> 

,並在適當的控制器,我補充說:

testme: Ember.Object.create({ 
    title: "Hello world!", 
    content: "yup", 
    placement: "left" 
    }), 

這是不抱怨{{bs-bind-popover}}句柄,我測試了其他一些東西,他們似乎工作正常,所以我相當有信心,我已經正確地將資產添加到項目中,等等

回答

0

自己解決。

我的問題是誤解了如何通過ember-cli插入事物......坦率地說,我仍然沒有100%清楚,因爲有些東西在使用時似乎需要導入,有些東西會在Ember下創建一個名稱空間而這個(Ember的bootstrap)只是將Bootstrap作爲一個全局命名空間。所以,這個問題的答案是,我擁有一切權利,除非...

import Bootstrap from 'somewhere I cant seem to figure out'; 

export default Bootstrap.TooltipBoxController.extend({ 
}); 

早該剛剛......

export default Bootstrap.TooltipBoxController.extend({ 
}); 

...沒有進口需要,雖然你會想要一些jshint註釋,否則它會在構建時抱怨它沒有被定義(因此爲什麼我認爲它需要被導入,我猜)。