错误:参数类型'AdvformBaseComponent(advform / base.dart)'无法分配给参数类型'AdvformBaseComponent(advform / base.dart)'。
分析器警告参数类型不能是AdvformBaseComponent,但该函数期望将完全类作为参数:
void addControl(AdvformBaseComponent baseComponent, String fieldName);
以下代码段位于AdvformBaseComponent的ngOnInit内。
objector.addControl(this, name);
如果我执行“addControl(这是动态的”),它只会隐藏警告,但是这样的hacky且不具备性能...... sdk 1.22.1
编辑:
AdvformBaseComponent是一个由其他组件实现的抽象类。它本质上是表单组件的基类 AdvformObjectComponent是基于AdvformBaseComponent的组件的面板组。任何AdvformBaseComponent都必须具有AdvformObjectComponent的父级 它们位于同一个项目和同一目录中 如果您觉得它有用,我可以共享这些文件,无论如何它们都是浏览器组件。
abstract class AdvformBaseComponent implements OnInit, AfterViewInit,
OnDestroy {
AdvformObjectComponent objector;
AdvformBaseComponent(this.objector, @Optional() this._submitter, this.translator, @Optional() this._group) {
if (objector == null)
throw new Exception(
'Advform inputs must have a advform-object as parent.');
}
}
class AdvformObjectComponent implements OnInit {
void addControl(AdvformBaseComponent baseComponent, String fieldName) {
...
}
}
答案 0 :(得分:0)
错误在1.23.0之后停止