繁体   English   中英

为现有模块创建d.ts文件

[英]Creating a d.ts file for existing module

我正在尝试为React StaticContainer库创建一个d.ts文件。

NPM中安装的lib如下所示:

var React = require('react');

var StaticContainer = (function (_React$Component) {

  function StaticContainer() {
    // ...
  }

  // ...

  return StaticContainer;
})(React.Component);

module.exports = StaticContainer;

示例用法如下:

var StaticContainer = require('react-static-container');

而且我不确定如何为此创建声明并在TypeScript中使用它。 从我的研究到目前为止,我想出了这个:

import * as StaticContainer from 'react-static-container'

这个d.ts文件:

interface StaticContainer extends React.Component<any, any> {
  shouldUpdate?:boolean;
}

declare module "react-static-container" {
  export = StaticContainer;
}

但是TSC给了我这个错误:

错误:(3,34)TS2497:模块'“react-static-container”'解析为非模块实体,无法使用此结构导入。

我很困惑module.exports = StaticContainer应该如何转换为d.ts文件。 这是怎么做到的?

模块'“react-static-container”'解析为非模块实体,无法使用此结构导入。

究竟错误是什么。 您需要使用import require导入export = style库。 这是因为ES6规范。

import StaticContainer =  require('react-state-container');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM