如何通过在ionic2中扩展BaseInput来创建自定义表单组件



我想通过扩展 ionic2 创建自定义表单输入组件BaseInput。但是它没有渲染,我在 DOM 上找不到它。

import { Component, ElementRef, OnDestroy, Optional, Renderer, 
ViewEncapsulation } from "@angular/core";
import { Config, Form, Item } from "ionic-angular";
import { BaseInput } from "ionic-angular/util/base-input";
import { NG_VALUE_ACCESSOR } from "@angular/forms";
@Component({
selector: 'my-checkbox',
template:
'<p>aaaaa</p>',
host: {
'[class.checkbox-disabled]': '_disabled'
},
providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: MyCheckboxComponent, multi: true } ],
encapsulation: ViewEncapsulation.None,
})
export class MyCheckboxComponent extends BaseInput<any> implements OnDestroy {
constructor(form: Form, config: Config, elementRef: ElementRef, renderer: Renderer, @Optional() item: Item) {
super(config, elementRef, renderer, 'my-checkbox', [], form, item, null);
}
}

代码是从src/component/checkbox/checkbox.ts复制的,并进行一些更改。

我遇到了同样的问题。我的组件没有在父元素中呈现<ion-item>。我通过添加item-content指令来修复它

<ion-item> <ion-label>Label</ion-label> <my-checkbox item-content></my-checkbox> </ion-item>

相关内容

  • 没有找到相关文章

最新更新