我通过添加来安装平台定义。"tns-platform-declarations": "^2.5.2"但是,当我使用中的定义时,tns- platform- declarations/android.d.ts无法访问API的某些部分。例如,我无法访问android.support.design.widget.Snackbar
"tns-platform-declarations": "^2.5.2"
tns- platform- declarations/android.d.ts
android.support.design.widget.Snackbar
private snackbar: android.support.design.widget.Snackbar;
因为“ android.support”没有导出的成员“ design”,我想念什么?当我完成代码时,仅得到“ android.v4”,而v4不包含“设计”模块。
我也尝试 像有人建议的那样直接使用’app’对象导入:
import * as app from 'application'; private snackbar = app.android.support.design.widget.Snackbar; // error: 'application' has no member 'android'
有了上面的代码,我就完成了代码,但是在下面android弯曲的红色和tsc不会编译。
android
我发现的唯一替代方法类似于此解决方案,但实际上并不是一个解决方案,因为我也可以这样作弊:
declare var android:any;
我实际上如何使用TS定义进行编译并获得代码完成?
有一个针对android sdk的实验性类型定义生成工具,以及该项目中使用的android支持库。使用--androidTypings标志进行构建/运行,以为您生成d.ts。
--androidTypings
这些应该包含您在平台声明中找不到的类,因为它们是针对项目中使用的版本生成的。
tns build android --androidTypings