使用typescript和webpack

时间:2017-10-02 14:42:55

标签: javascript typescript import webpack typeahead.js

我跑了npm install typeaheadnpm install @types/typeahead,不过我是 将typeahead导入我的tsx模块时遇到问题:

import * as React from "react";
import "typeahead";

interface IReactTypeaheadInputProps {
    id: string,
    name: string,
    url: string,
    searchField: string,
}

export class ReactTypeaheadInput extends React.Component<IReactTypeaheadInputProps, {}>{

    componentDidMount(): void {
        .
        .
        .
        $("#" + this.props.id).typeahead<string>(typeaheadOptions, datasets);
    }

    render() {
        return (
            <input id={this.props.id} name={this.props.name}/>
        );
    }
}

我试过了:

  • 各种风格的导入声明
  • 在我的webpack.config.js文件中添加别名,如下所示:

    解决:{     别名:{         typeahead:&#39; typeahead.js&#39;     } }

当我使用import "typeahead"时,我得到了

  

未捕获的TypeError:$(...)。typeahead不是函数

当我使用import * as typeahead from "typeahead";时,我得到了

  

未捕获错误:无法找到模块&#34;预先输入&#34;

我正在获得整个Twitter.Typeahead命名空间的智能感知(我使用VS 2017)。但是我怀疑npm typeahead包不是官方的,因为它是旧版本,文件名是typeahead.js而不是index.js文件夹中的node_modules

我已尝试手动添加较新版本,但结果相同。

0 个答案:

没有答案