繁体   English   中英

灰烬从子组件中删除父类

[英]Ember remove parent class from child component

我有一个插件组件,它包装了来自其他插件的组件:

// parent-addon/addon/components/parent-component.js
import Component from '@ember/component';
import layout from '../templates/components/parent-component';

export default Component.extend({
  layout,
  classNames: ['parent']
});

// child-addon/addon/components/child-component.js
import Parent from 'parent-addon/components/parent-component';
import layout from '../templates/components/child-component';

export default Parent.extend({
  layout,
});

// child-addon/addon/templates/components/child-component.hbs
{{#parent-component}}
  Hello
{{/parent-component}}

因为className是串联的,所以子组件的包装div包含“父”类,例如

<div class="parent">
  <div class="parent">
    Hello
  </div>
</div>

有没有办法从子组件的classNames中删除“父”类? 我无权访问父加载项,因此无法更改其任何代码。

这个帖子弄清楚了,不得不做

// child-addon/addon/components/child-component.js
import Parent from 'parent-addon/components/parent-component';
import layout from '../templates/components/child-component';

export default Parent.extend({
  layout,
  init() {
    this._super(...arguments);
    this.set('classNames', []);
  }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM