私はangular 7アプリを8.0.0に移行しました。
アプリはIVYなしで完璧に機能しますが、それを使用してコンパイルしようとすると、次のエラーがあります。
@Inputデコレータをクエリデコレータに組み合わせることはできません
行番号なし、ファイルなし、何もない...何もデバッグするのは難しい。
私はその直前に警告がありますが、それが関連しているかどうかわかりません。
エントリーポイントの「Angular-Tree-Component」の警告には、「Lodash/DefaultsDeep」、 'Lodash/omit'、 'Lodash/Isnumber'、 'Lodash/First'、 'Lodash/Last'への深い輸入が含まれています。 、 'Lodash/Compery'、 'Lodash/Compact'、 'Lodash/Isstring'、 'Lodash/Isfunction'、 'Lodash/Throttle'、 'Lodash/Isfunctle'、 'Lodash/Throttle'ロドッキー/ピック。これはおそらく問題ではありませんが、エントリポイントのコンパイルが順不同になる可能性があります。
何か案は ?
へのアップグレードAngular 9私に同じエラーが発生しました、このエラーの責任あるコード)は次のとおりです。
_@Input() @ContentChild(Component) actions: Component;
_
問題は、@Input()
と_@ContentChild
_を組み合わせることができないので、エラーの責任のあるコードを次のように置き換えました。
_get actions(): Component {
return this._actions;
}
private _actions: Component;
@Input()
set actions(value: Component) {
this._actions = value;
}
@ContentChildren(Component)
set viewActions(value: Component) {
if (!this._actions && value) {
this._actions = value;
}
}
_
私の問題は、私が誤って以下のように複数のクエリデコレータを置くことでした
@ViewChild(DataTableDirective, { static: false })
@ViewChild(DataTableDirective, { static: false })
_
そのため、1つのデコレータを削除することによってのみ解決されました。