gpt4 book ai didi

ember.js - Ember CLI 在插件中生成组件

转载 作者:行者123 更新时间:2023-12-01 05:05:26 25 4
gpt4 key购买 nike

我尝试使用 ember-cli 制作插件。这是我到目前为止所做的一步一步:

sudo ember addon test-addon
cd test-addon
sudo ember serve

现在服务器运行并且在 localhost:4200 我可以看到测试/虚拟应用程序的应用程序 hbs。

Welcome to Ember.js



是时候为插件制作一些组件了:
sudo ember g component my-form

测试/虚拟/app/templates/application.hbs 我添加了
{{我的表格}}

现在我收到以下 js 错误:

Uncaught Error :找不到模块 test-addon/components/my-formdummy/components/my-form 导入

编辑

在用 npm 挣扎了一下之后,我又试了一次(没有 sudo),同样的事情发生了。我在 Ember CLI 0.2.1 上。这是我的文件,但它们应该是相同的,因为它们是自动生成的。错误从 抛出。 bower-components/loader.js/loader.js 第 110 行 .

插件/组件/my-form.js
import Ember from 'ember';
import layout from '../templates/components/my-form';

export default Ember.Component.extend({
layout: layout
});

插件/模板/组件/my-form.hbs
{{yield}}

应用程序/组件/my-form.js
import myForm from 'test-addon/components/my-form';

export default myForm;

最佳答案

看起来 (as of July 2015, anyway ) 模板在插件中不起作用的事实部分是设计使然。从哲学上讲,我想理由是样式应该是特定于应用程序的,但是可以共享 JS 逻辑。或者这只是一个错误/疏忽。

事实证明,如果您只是删除该布局线和导入布局,它将起作用。

所以结果看起来像:
<app-name>/app/templates/includes-a-shared-component.hbs :

What follows is my shared component! {{my-shared-component}}
<addon-name>/addon/components/my-shared-component.js :
import Ember from 'ember';

export default Ember.Component.extend({
valueFromProperty:function() { // simple hello-world-style function
return 5;
}.property()
});
<app-name>/app/templates/components/my-shared-component.hbs :
Hey look I'm the app-specific style for your component <marquee>Hello world</marquee>
Here's a value from a property: {{valueFromProperty}}

我的版本:
Ember :1.13.1
节点:0.12.0
npm:2.12.1

关于ember.js - Ember CLI 在插件中生成组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29282148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com