【问题标题】:How to import JS library to typescript in React Native project如何在 React Native 项目中将 JS 库导入打字稿
【发布时间】:2018-10-13 11:54:07
【问题描述】:

如何将 js 库(在我的例子中是 xhook 库)导入到我用 typescript 编写的 react native 项目中?或者如何为外部 js 库创建 typescript 头文件?

【问题讨论】:

标签: javascript typescript react-native


【解决方案1】:

你可以简单地使用:

const signalrLib = require("react-native-signalr").default

【讨论】:

    【解决方案2】:

    TypeScript 像 Babel 或任何其他扩展的 Javascript 语言一样编译为纯 Javascript。

    因此,当您将示例 xhook 添加到您的项目时,项目所有者已经将他/她的 TypeScript 代码编译为纯 JS,您可以像导入任何其他库一样导入它。

    例如。 import xhook from 'xhook' 等库作者如何指定。

    如果你访问 xhook 的 git 页面 https://github.com/jpillora/xhook 你可以自己看到它,你可以在文件夹 distpackage.json -file 中看到编译后的代码,属性 main 指向该文件。

    TypeScript 本身并不是在浏览器中运行的语言,但它总是被编译为纯 JavaScript。希望这有助于了解其工作原理。

    编辑。看起来xhook实际上是用 CoffeeScript 编写的,但同样的规则也适用于它。

    【讨论】:

      【解决方案3】:

      按照建议,您可以在 typescript 中使用任何 ES6/ES2015 表示法。 使用新的打字稿,导入将是

      import xhook from 'xhook';
      

      旧版本:

      import * as xhook from 'xhook'
      

      某些模块没有类型支持。你可以寻找类型支持

      yarn add @types/xhook
      

      如果你没有找到可以使用的类型支持,节点需要语法

      const xhook = require('xhook');
      

      为此,您可能需要声明,require 定义如下:

      declare const require: any;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-06
        • 1970-01-01
        • 1970-01-01
        • 2017-02-19
        • 2018-04-13
        • 2018-10-21
        • 1970-01-01
        • 2018-12-02
        相关资源
        最近更新 更多