在typescript中找不到'autobind-decorator'的声明文件

时间:2017-05-31 10:31:31

标签: node.js typescript npm

我正在使用Typescript,我想在项目中导入'autobind-decorator'包,但是它被困在这里。

编译时我收到此错误行:

  

找不到'autobind-decorator'的声明文件。隐含地具有“任何”类型

我也尝试了@types/autobind-decorator npm包,但它没有用。 有没有选择摆脱这个编译错误?

这是我的tsconfig:

{
    "version": "2.1.5",
    "compilerOptions": {
        "module": "commonjs",
        "lib": ["es2015", "es2016", "dom"],
        "sourceMap": true,
        "noImplicitAny": true,
        "target": "es6",
        "jsx": "react",
        "skipLibCheck": true,
        "experimentalDecorators": true
    },
    "include": [
      "./packages/ld-web/src/**/*"
    ],
    "exclude": [
        "**/node_modules",
        "**/*.d.ts"
    ]
}

导入:

import * as autobind from "autobind-decorator";

2 个答案:

答案 0 :(得分:1)

从类型声明here声明并导出为模块

您需要将@types安装为:

npm install @types/autobind-decorator --save-dev

并导入为:

import autobind = require("autobind-decorator");

答案 1 :(得分:0)

这可行,根本不使用导入:

const { autobind } = require('autobind-decorator');

我在运行时仍然有错误,所以我再次阅读了文档

https://www.npmjs.com/package/autobind-decorator

二手

const {́boundMethod} = require('autobind-decorator');

有效,

我再次尝试使用导入,但失败了。