Ember CLI无法找到部分

时间:2015-04-02 16:39:43

标签: ember.js ember-cli

我正在制作一个插件。我尝试使用偏。在我的 addon / templates / components / form.hbs 中,我得到了{{partial "pane"}}。我的 _pane.hbs 在addon / templates 文件夹中是,但是ember无法找到它:

未捕获错误:断言失败:无法找到名称为“窗格”的部分。

我还尝试将 _pane.hbs 放在插件/模板/组件中,但没有运气。我应该把它放在哪里被灰烬拿走?

3 个答案:

答案 0 :(得分:7)

正如前面提到的here,Ember CLI中的所有内容都被删除了。使用短划线而不是下划线。

另外,我认为partial帮助程序从templates目录开始解析。如果您想将部分存储在components目录中,您可能必须明确说明。

所以你的文件应该命名为:

addon/templates/components/-pane.hbs

你的电话应该是这样的:

{{partial 'components/pane'}}

答案 1 :(得分:2)

addon/templates下的模板未包含在标准Ember构建链中,标准Ember解析程序找不到它们。这就是您必须手动导入模板并将其指定为组件中的布局的原因。

如果您想在插件中使用部分内容,则必须将其放在app/templates下。这是不可取的,但不仅部分不会使用您的插件模板预编译,它将污染根应用程序的模板命名空间。

即将推出的版本的ember-cli可能会解决这个问题,插件即将发生重大变化。

答案 2 :(得分:0)

如果您希望应用程序访问插件中的内容,则需要将它们放在app目录而不是addon目录中。每个插件的app目录都与用户app目录合并。

通常你的所有逻辑都存在于addon目录中,你只需导入然后导出app目录中的每个项目(app目录非常愚蠢,只包含一个导出列表)...但是模板然而我是'我不知道怎么可能呢?

您可以尝试使用addon / templates / _partial.hbs然后在app / templates / _partial.js中导入它,但我又不确定这是否有效..如果这不起作用,请参阅如果把它放在app / templates / _partial.hbs中