Javascript react boostrap typeahead的自定义类型脚本定义

Javascript react boostrap typeahead的自定义类型脚本定义,javascript,reactjs,typescript,Javascript,Reactjs,Typescript,我正在尝试为创建自定义的Typescript定义。到目前为止,以下是我根据文档所做的: // Custom made typings based on exampes: https://github.com/ericgio/react-bootstrap-typeahead declare namespace ReactBootstrapTypeahead { import React = __React; // Input class ReactBootstrapT

我正在尝试为创建自定义的Typescript定义。到目前为止,以下是我根据文档所做的:

// Custom made typings based on exampes: https://github.com/ericgio/react-bootstrap-typeahead

declare namespace ReactBootstrapTypeahead {
    import React = __React;

    // Input
    class ReactBootstrapTypeahead extends React.Component<ReactBootstrapTypeaheadProps, any> {

    }

    interface ReactBootstrapTypeaheadProps extends React.HTMLProps<ReactBootstrapTypeahead> {
        align?: string;
        allowNew?: boolean;
        defaultSelected?: any[];
        disabled?: boolean;
        emptyLabel?: string;
        labelKey?: string;
        maxHeight?: number;
        minLength?: number;
        multiple?: boolean;
        name?: string;
        newSelectionPrefix?: string;
        onBlur?(): any;
        onChange?(): any;
        onInputChange?(): any;
        options: any[];
        paginateResults?: number;
        paginationText?: string;
        placeholder?: string;
        renderMenuItemChildren?(): any;
    }
}

declare module 'react-bootstrap-typeahead' {
    export = ReactBootstrapTypeahead;
}

我对整个Typescript定义都是新手,因此如果您有任何帮助,我将不胜感激。

当您为库编写声明文件时,强烈建议您尝试将所有内容包装在模块化声明文件中,而不是全局声明中

我首先拉入一个模块化的react声明文件(
typings安装react--save

然后我会更改您的声明文件,专门从react中提取输入

自定义打字/react引导打字提前

declare module 'react-bootstrap-typeahead' {
  import React = require('react')
  interface ReactBootstrapTypeaheadProps extends React.HTMLProps<ReactBootstrapTypeahead> {
    // ¯\_(ツ)_/¯
  }
  class ReactBootstrapTypeahead extends React.Component<ReactBootstrapTypeaheadProps, any> {
  }
  export = ReactBootstrapTypeahead
}

您是否已将此发布到?有关实现的更多详细信息,请参阅和相应的。但基本上是@Pelle在上面提到的。
declare module 'react-bootstrap-typeahead' {
  import React = require('react')
  interface ReactBootstrapTypeaheadProps extends React.HTMLProps<ReactBootstrapTypeahead> {
    // ¯\_(ツ)_/¯
  }
  class ReactBootstrapTypeahead extends React.Component<ReactBootstrapTypeaheadProps, any> {
  }
  export = ReactBootstrapTypeahead
}
 import ReactTypeahead = require('react-bootstrap-typeahead')