在Nativescript中创建并添加插件后找不到模块

在Nativescript中创建并添加插件后找不到模块,nativescript,Nativescript,使用最新版本的Nativescript,我根据文档创建了一个插件,运行tns plugin add../Nativescript keychain后,我收到消息已成功安装插件Nativescript keychain。 我还可以看到它已添加到我的应用程序的node_modules目录中,但require(“nativescript密钥链”)不起作用,因为我收到错误找不到模块“nativescript密钥链” 我的plugin package.json看起来像 { "name": "nativ

使用最新版本的Nativescript,我根据文档创建了一个插件,运行
tns plugin add../Nativescript keychain
后,我收到消息
已成功安装插件Nativescript keychain。

我还可以看到它已添加到我的应用程序的node_modules目录中,但
require(“nativescript密钥链”)
不起作用,因为我收到错误
找不到模块“nativescript密钥链”

我的plugin package.json看起来像

{
  "name": "nativescript-keychain",
  "version": "0.0.1",
  "nativescript": {
    "platforms": {
      "ios": "2.2.1"
    }
  }
}

这可能有几个原因;如果您提供回购协议以查看所有代码,这将非常有用

  • package.json没有指向源代码的链接,通常您有一个
    main:“somefile”
  • 您是否执行了
    tns运行ios--emulator
    安装插件后,必须重建应用程序才能生效,插件无法通过livesync同步
  • 是代码TypeScript或JavaScript,如果是TypeScript,则需要将其传输到JS,然后才能将其添加到演示应用程序中。TNS不会在插件中编译任何TS代码。插件必须附带最终的JS代码
  • 您需要键入TS以使用自动完成,而不是抛出有关可用方法的警告

  • 好的,这是我创建的插件。我正试图从“nativescript keychain”中将Angular版本的应用程序添加为
    import*as keychain啊,我想我已经意识到了原因。因为我使用angular和typescript,我的插件需要打字才能工作。对于TS,您确实需要打字才能使插件在没有任何警告或错误的情况下工作。在纯JavaScript中,您不需要输入,插件也可以正常工作。