我创建了一个空白的 Ionic 应用程序,并在: src/components 我复制/粘贴了内置的 Ionic 组件: range

https://github.com/ionic-team/ionic/blob/master/src/components/range/

我使用了: custom-range 用于选择器, CustomRange 用于类 . 此外,重命名了与我的自定义组件对应的文件 .

这是 src 目录的结果文件结构 .

enter image description here

一切正常 . 我可以成功使用以下代码:

<custom-range min="-30" max="30" step="5" snaps="true" [(ngModel)]="value"></custom-range>

My problem is 在构造函数内部: custom-range 我有以下内容:

constructor(
    form: Form,
    private _haptic: Haptic,
    @Optional() item: Item,
    config: Config,
    private _plt: Platform,
    elementRef: ElementRef,
    renderer: Renderer,
    private _dom: DomController,
    private _cd: ChangeDetectorRef
) {
    super(config, elementRef, renderer, 'range', 0, form, item, null);
    this._events = new UIEventManager(_plt);
}

https://github.com/ionic-team/ionic/blob/master/src/components/range/range.ts#L264

Notice 使用: range 内部调用 super 构造函数 .
如果我将其更改为: custom-range ,则我的自定义组件无法正确呈现 .

所以,现在我不知道这是否与内置的Ionic range 组件有关 .

我确实知道在执行以下操作时我正在使用自定义组件:

<custom-range min="-30" max="30" step="5" snaps="true" [(ngModel)]="value"></custom-range>

因为如果我修改我的自定义组件的模板,我可以看到渲染的修改,所以这不是问题 .

我只是想在上面的构造函数上将 range 更改为 custom-range 但没有成功 .

有关如何实现这一点的任何想法?

谢谢!