[英]Bootstrap for Ember using Ember CLI; can't get popovers component to work
我被困在這里...
http://ember-addons.github.io/bootstrap-for-ember/#/show_components/popover顯示了有關該如何工作的文檔...下面引用可能是我不太了解的部分(這是一個有點令人困惑,因為所有這些都提到了工具提示而不是彈出窗口,但是我在飛躍着,因為它們都在同一個文檔中並且都相關...)
為了獲得Popover支持,需要調整應用程序路由,並在主模板中添加命名的插座,並引用從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
});
} });
好的,所以在template / application.hbs中,我添加了以下內容:
{{outlet bs-tooltip-box}}
然后,在routes / 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”的控制器不存在。 因此,我創建了一個:ember g controller 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}}車把,而且我還測試了其中的其他幾件東西,它們似乎也可以正常工作,所以我很確定自己已將資產正確添加到項目中,等等
我自己解決了。
我的問題是關於如何通過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注釋,否則它會在構建時抱怨未定義(因此,我想為什么我認為需要導入它)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.