2017-12-11 9 views
1

私はSpartadigital NativeScript Permissionsプラグインを使用していNativeScriptパーミッション - 'android'という名前は見つかりませんか?

私もやってきました:

tns plugin add @spartadigital/nativescript-permissions 

そしてtsファイル内:私はtns run androidを実行したときに

import {Permissions} from '@spartadigital/nativescript-permissions'; 

しかし:私が手:

node_modules/@ spartadigita l/nativescript-permissions/permissions.android.d.ts(2,37): エラーTS2304:名前 'android'が見つかりません。

node_modules/@spartadigital/nativescript-permissions/permissions.android.d.ts(3,34): エラーTS2304:名前 'android'が見つかりません。 node_modules/@spartadigital/nativescript-permissions/permissions.ios.d.ts(24,47): エラーTS2552:名前 'NSObject'が見つかりません。あなたは 'オブジェクト'を意味しましたか? node_modules/@spartadigital/nativescript-permissions/permissions.ios.d.ts(24,67): エラーTS2304:「CLLocationManagerDelegate」という名前が見つかりません。 node_modules/@spartadigital/nativescript-permissions/permissions.ios.d.ts(26,20): エラーTS2304:「CLLocationManagerDelegate」という名前が見つかりません。

ファイルを見て、私はそれがandroidを知らないことを参照してください。

enter image description here

も、他のIOSのオブジェクトを:

enter image description here

私はすでにTNS-プラットフォームを持っている

- 宣言:

enter image description here

質問:

なぜそれがこれらのキーワードを認識しないとどのように私はそれを修正することができますか?

package.json

ts.config

答えて

2

あなたは、あなたのプロジェクトにtns-platform-declarationsモジュールを追加する必要があり、これはあなたなどのネイティブの名前空間、クラス、のためのタイピングを与え、このモジュールで提供されるもののためにもインテリセンスを有効にします。

https://www.npmjs.com/package/tns-platform-declarations

+0

私はすでにそれを持っています:https://i.imgur.com/Eeqxvmk.jpg - 多分それが理由ですか? -------->:https://i.imgur.com/73M3jli.jpg –

+0

ああ、質問をすばやく読んでください:)あなたは 'references.d.ts'ファイルを持っていますか?また、これはあなたのローカルプロジェクトで起こっているのでしょうか、それともプラグイン自体だけで起こっていますか?私は多くのプラットフォーム宣言を自分では使っていませんが、私はそれをプロジェクト上に持っていれば正しく解決するようです。私はちょうどそれが依存関係にパスを解決するかどうか思い出しません。他の設定オプションがあるかもしれませんが、 'references.d.ts'に解決できるように依存関係にプラットフォーム宣言を追加してください。 –

+1

[あなたは何を言うことができますか? ** **これらの宣言をルート 'reference.d.ts'にコピーして動作させます。](https://i.imgur.com/yr9fXWB.jpg) –

0

簡単な答えは、あなたがそれを呼び出している(輸入下)typescriptファイルの先頭にdeclare var androidを追加することです。NativeScriptはどこにそのコンパイル後からアンドロイド取得することを知っています。

関連する問題