我通過添加"tns-platform-declarations": "^2.5.2"
來安裝平臺定義但是,當我使用tns-platform-declarations/android.d.ts
中的定義時,我無法訪問API的某些部分。舉例來說,我不能訪問android.support.design.widget.Snackbar
如何在nativescript中使用本機android小部件類型定義?
private snackbar: android.support.design.widget.Snackbar;
因爲「android.support」沒有出口成員「設計」我缺少什麼?當我完成代碼時,我只獲得'android.v4',而v4不包含「設計」模塊。
我也嘗試直接使用「應用程序」對象導入正如有人提出:
import * as app from 'application';
private snackbar = app.android.support.design.widget.Snackbar;
// error: 'application' has no member 'android'
通過上述,我得到的代碼完成,但紅色下android
和TSC波浪不會編譯。
我發現的唯一的選擇,與此類似solution這是不是一個真正的解決辦法,因爲我可以欺騙這個樣子,太:
declare var android:any;
如何實際使用TS定義來編譯並獲得代碼完成?
的種類無關,但是,我與nativescipt了一下週圍的玩弄,雖然它是一項偉大的工程,我敢打賭說,使用它與所有你想要的功能,很可能更多的是比單獨學習Java和Swift並使用它們頭疼。 – Pytth
僅供參考,以下是使用TypeScript原生Android API的示例:https://github.com/bradmartin/nativescript-snackbar/blob/master/snackbar.android.ts我基本上試圖弄清楚爲什麼intellisense是在這種情況下爲我破碎。 – FlavorScape
有一個用於android sdk的實驗類型定義生成工具,以及項目中使用的android支持庫。使用'--androidTypings'標誌建立/運行爲您生成d.ts'。它們應該包含在平臺聲明中找不到的類,因爲它們是針對項目中使用的版本生成的。 – pkanev