Typescriptを初めて使用しています。私はTypescriptを使ってIonic 1.2.4(Angular)プロジェクトを開始しました。 transpilingとき、私が原因コルドバプラグインが実際にインストールされているファイルrun.ts
Ionic 1アプリのCordovaプラグイン(Typescriptを使用)
///<reference path="../../typings/tsd.d.ts"/>
export function onRun($ionicPlatform) {
$ionicPlatform.ready(function() {
if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
})
}
にangular.module.run()
に渡され、次の機能にエラーメッセージProperty 'Keyboard' does not exist on type 'CordovaPlugins'
を受け取り、それがタイプ定義ファイルは間違いなく存在しているのです。ここにファイルtsd.d.ts
があります。
/// <reference path="angularjs/angular.d.ts" />
/// <reference path="cordova/cordova.d.ts" />
/// <reference path="cordova/plugins/BatteryStatus.d.ts" />
/// <reference path="cordova/plugins/Camera.d.ts" />
/// <reference path="cordova/plugins/Contacts.d.ts" />
/// <reference path="cordova/plugins/Device.d.ts" />
/// <reference path="cordova/plugins/DeviceMotion.d.ts" />
/// <reference path="cordova/plugins/DeviceOrientation.d.ts" />
/// <reference path="cordova/plugins/Dialogs.d.ts" />
/// <reference path="cordova/plugins/FileSystem.d.ts" />
/// <reference path="cordova/plugins/FileTransfer.d.ts" />
/// <reference path="cordova/plugins/Globalization.d.ts" />
/// <reference path="cordova/plugins/InAppBrowser.d.ts" />
/// <reference path="cordova/plugins/Keyboard.d.ts" />
/// <reference path="cordova/plugins/Media.d.ts" />
/// <reference path="cordova/plugins/MediaCapture.d.ts" />
/// <reference path="cordova/plugins/NetworkInformation.d.ts" />
/// <reference path="cordova/plugins/Push.d.ts" />
/// <reference path="cordova/plugins/Splashscreen.d.ts" />
/// <reference path="cordova/plugins/StatusBar.d.ts" />
/// <reference path="cordova/plugins/Vibration.d.ts" />
/// <reference path="cordova/plugins/WebSQL.d.ts" />
/// <reference path="ionic/ionic.d.ts" />
/// <reference path="jquery/jquery.d.ts" />
キーボードのタイプ定義を直接run.ts
に配置しようとしました。 ///<reference path="../../typings/cordova/plugins/Keyboard.d.ts"/>
プラグインが実際に登録されることは期待していません。「cordova.js」は、アプリケーションのビルド/パッケージ化が完了するまで利用できないためです。しかし、私はTypescriptにKeyboard
が実際にタイプdefs経由でcordova.plugins
に存在することを認識させる方法を知りたいと思います。それ以外の場合は、蒸散中にこのエラーを回避するにはどうすればよいですか?
[typings](https://github.com/typings/typings)に相当するコマンド: 'typings install dt〜cordova-ionic --global --save' – rinogo