使用typescript的nativescript中缺少android包
我收到以下错误消息:使用typescript的nativescript中缺少android包,typescript,nativescript,Typescript,Nativescript,我收到以下错误消息: main-page.ts(15,26): error TS2304: Cannot find name 'android'. 使用typescript创建新的nativescript项目后 tns create demo --template typescript 并添加以下xml、ts文件 main-page.xml 主页 import placeholder = require("ui/placeholder"); export function creati
main-page.ts(15,26): error TS2304: Cannot find name 'android'.
使用typescript创建新的nativescript项目后
tns create demo --template typescript
并添加以下xml、ts文件
main-page.xml
主页
import placeholder = require("ui/placeholder");
export function creatingView(args: placeholder.CreateViewEventData) {
var nativeView = new android.widget.CalendarView(args.context);
args.view = nativeView;
}
这是一个TypeScript编译器警告,它本身不是一个错误。如果要防止出现以下警告,可以将平台定义安装到Nativescript项目中:
npm i tns平台声明
您仍然可以运行TSC
将TypeScript转换为Javascript,这样就可以了。它只是用于类型检查警告,这是TypeScript的优点:)
希望所有这些都是有意义的,并有帮助
在安装tns平台声明包并将以下代码段添加到tsconfig.json“文件”后,@BradMartin表示感谢:[“/node\u modules/tns平台声明/android17.d.ts”]编译器找到了android软件包。你介意接受答案吗?这样这个问题就可以在so线程上解决了?我为此苦苦挣扎了这么久。对于其他人-如果您正在使用typescript,但编译失败,因为它找不到某些类/函数(如
android.support.v4.content.ContextCompat.checkSelfPermission
),请将其包装为任意-(android.support.v4.content.ContextCompat为任意).checkSelfPermission
更简单的方法是声明var-android:any
,这样每次使用android名称空间时就不需要强制转换为any。