NativeScript中Java类的Intellisense
我在我的NativeScript项目中使用了一些本机Android代码,其中使用了一些Java类(如NativeScript中Java类的Intellisense,java,visual-studio-code,nativescript,Java,Visual Studio Code,Nativescript,我在我的NativeScript项目中使用了一些本机Android代码,其中使用了一些Java类(如StringBuilder或InputStreamReader)。我安装了tns平台声明,我有针对Android的intellisense(或者至少是其中的一部分),但不适用于这些纯Java类 我目前使用它们的方式如下: let out = new java.lang.StringBuilder(); let sr = new java.io.InputStreamReader(stream, "
StringBuilder
或InputStreamReader
)。我安装了tns平台声明
,我有针对Android的intellisense(或者至少是其中的一部分),但不适用于这些纯Java类
我目前使用它们的方式如下:
let out = new java.lang.StringBuilder();
let sr = new java.io.InputStreamReader(stream, "UTF-8");
问题是,我没有获得任何智能感知,例如InputStreamReader
构造函数重载和参数,也没有稍后在其上使用的read()
方法<代码>StringBuilder和InputStreamReader
属于此处的any
类型
是否可以在NativeScript和Visual Studio代码中为所有Java类提供intellisense?如插件自述中所述 创建
reference.d.ts
并添加以下内容:
/// <reference path="./node_modules/tns-platform-declarations/ios.d.ts" />
/// <reference path="./node_modules/tns-platform-declarations/android.d.ts" />
//
///
谢谢您的回答。我的项目中有这个文件,但名为references.d.ts
。我不确定这是否是原因。然后我还删除了declare var java:any代码>从文件顶部开始,现在intellisense开始工作。虽然如果我将ios.d.ts
行留在reference.d.ts
文件中,我会得到node_modules/tns core modules/tns core modules.d.ts(170,15):错误TS2300:重复标识符“NativeScriptEmbedder”。node_modules/tns平台声明/ios/objc-x86_64/objc!NativeScriptEmbedder.d.ts(2,15):错误TS2300:重复标识符'NativeScriptEmbedder'。
我现在不需要ios。我认为引用.d.ts应该仍然可以,声明变量java:any代码>应该是您案例中的问题。当您不必包含平台声明时,可以使用该声明语句,只是为了在没有intellisense的情况下防止编译器错误。