我正在尝试将角度内的PrimeNg自动完成组件扩展。我需要在keyup.enter
上添加事件,这样我才能使其行为像自动完成选择或创建新事件。
我复制了模板html并添加了NG_VALUE_ACCESSORS
引用Extending a PrimeNg component inside Angular2和Extending components in PrimeNG
我仍然收到以下错误:
错误错误:没有DomHandler的提供者!
at injectionError(core.es5.js:1169) 在noProviderError(core.es5.js:1207) 在ReflectiveInjector_.webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 throwOrNull(core.es5.js:2649) 在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKeyDefault(core.es5.js:2688) 在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector _。 getByKey(core.es5.js:2620) 在ReflectiveInjector .webpackJsonp ... / .. / .. / core/@angular/core.es5.js.ReflectiveInjector_.get(core.es5.js:2489) at resolveNgModuleDep(core.es5.js:9475) 在NgModuleRef_.webpackJsonp ... / .. / .. / core/@angular/core.es5.js.NgModuleRef_.get(core.es5.js:10557) at resolveDep(core.es5.js:11060) 在createClass(core.es5.js:10924)
答案 0 :(得分:0)
在装饰者中,添加到提供者' DomHandler'。
e.g:
@Component({
selector: 'my-selector',
providers: [{
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef(() => MyClass),
multi: true
}, DomHandler],
template: ``
})
export class MyClass {}