フレックスレイアウトを含める方法


10

flex-layoutをAngularアプリに追加しようとしていますが、追加して使用しようとすると、アプリが壊れます。インストールしました

npm i @angular/flex-layout @angular/cdk

次にapp.module.tsにインポートされます

import { FlexLayoutModule } from '@angular/flex-layout';

import [ FlexLayoutModule ]

typescriptも最新にアップグレードしました

npm i typescript@latest

しかし、アプリをコンパイルしようとすると、あらゆる種類のエラーが発生します。

ERROR in node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - error TS1086: An accessor cannot be declared in an ambient context.

24     protected get parentElement(): HTMLElement | null;
                 ~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19 - error TS1086: An accessor cannot be declared in an ambient context.

26     protected get nativeElement(): HTMLElement;
                 ~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9 - error TS1086: An accessor cannot be declared in an ambient context.

28     get activatedValue(): string;
       ~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9 - error TS1086: An accessor cannot be declared in an ambient context.

29     set activatedValue(value: string);
       ~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9 - error TS1086: An accessor cannot be declared in an ambient context.

20     get overlappings(): BreakPoint[];
       ~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:24:9 - error TS1086: An accessor cannot be declared in an ambient context.

そしてリストは続く。何かのバージョンの不一致はありますか?

ありがとう…


またはtypescriptバージョンの可能性があります>
Prashant Pimpale

回答:


7

依存関係にtslibを追加してみてください

npm install --save tslib

編集する

Angular v8を使用している場合は、v8をflex-layoutに使用するため、v9にはAngular v9が必要です。


変化なし。以前と同じエラー。
cpeddie

3
誰かが既にTS1086エラーの問題を提起しています。それとその解決策を略奪します。回答はv9 requires Angular v9 and more importantly TypeScript v3.7. Please use the v8 release of Flex Layout.
Ratnadeep Bhattacharyya

それだけでした。Flexレイアウトのバージョンが間違っています。
cpeddie

24

これは、Angular 8を使用しているが、ライブラリにはAngular 9が必要なためです。package.jsonで次のバージョンを使用します。 "@angular/flex-layout": "^8.0.0-beta.27"


ありがとう、それは私のために働きます!
user3856842
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.