Webpack を使用して Angular 8 プロジェクトに取り組んでいます。Mapbox GL JSを統合できましたが、 Mabox GL Drawをインポートする方法がわかりません。私は次のバージョンを持っています:
"@angular/core": "8.2.14",
"mapbox-gl": "^1.9.0",
"@types/mapbox-gl": "^1.8.2",
"@mapbox/mapbox-gl-draw": "^1.1.2",
私はMapbox GL Draw docsに従っていたので、Angular Service に以下を追加しました:
import * as MapboxDraw from '@mapbox/mapbox-gl-draw';
だから私はこのエラーを持っています:
TS7016: モジュール '@mapbox/mapbox-gl-draw' の宣言ファイルが見つかりませんでした。「/home/tommy/Work/engineering/effector/effector-gui/node_modules/@mapbox/mapbox-gl-draw/index.js」には、暗黙的に「any」タイプがあります。存在するかどうか試す
npm install @types/mapbox__mapbox-gl-draw
か、「declare module '@mapbox/mapbox-gl-draw';」を含む新しい宣言 (.d.ts) ファイルを追加します。
この提案に従って、 importの代わりにrequireを使用しようとしています:
const MapboxDraw = require('@mapbox/mapbox-gl-draw');
私はこれを持っていました:
3:20 エラー Require ステートメントはインポート ステートメントの一部ではありません'/home/user/proj/node_modules/jsonlint-lines/lib
だから私はこれに従おうとしました、私は自分のtsconfig.jsonを修正し、 npm "fs"経由でインストールしました。しかし、エラーが発生します:
この依存関係は見つかりませんでした: * ./node_modules/jsonlint-lines/lib/jsonlint.js の fs インストールするには、次のコマンドを実行します: npm install --save fs No type errors found
そこで、最初のエラーに戻ることにし、これに従いました。これらの値を追加してtsconfig.jsonファイルを変更しました。
"typeRoots": ["node_modules/@types","./types"],
...
"exclude": ["node_modules","./types"]
これらの 3 つのフォルダー types/@mapbox/mapbox-gl-draw/ 内にこのコンテンツでindex.d.tsファイルを作成したよりも
declare module '@mapbox/mapbox-gl-draw';
しかし、私はこのエラーが発生します
未定義のエラー (未定義、未定義): TS2688: '@mapbox' の型定義ファイルが見つかりません。
今、私は解決に非常に近いと感じていますが、さらに先に進む方法は今はありません.