如题
我想要在一个用 TypeScript 写的 React 项目中引入普通 JS 写的包,自己已经发布到 NPM 上了,webpack 打包的时候 libraryTarget: "commonjs2"
。
然后我在引入的时候,import XXX from XXX
,webstorm 报错,提示 TS7016: Could not find a declaration file for module XXX
我想知道,我必须写一个 d.ts 吗?
还是我用 webpack 打包的方式不对?
我发现某些网上的包也是普通 JS 写的,也没有找到 d.ts ,但是引入的时候没有问题,例如 react-select 这个
1
sneezry 2018-06-22 13:29:55 +08:00
|
2
zcdll OP @sneezry 抱歉,看到 react-select 的 d.ts 了。
不过我们还用了另外一个库,[dom-to-image]( https://github.com/tsayen/dom-to-image),这个包没找到 d.ts 啊。 我们用的是 `const domtoimage = require('dom-to-image')` 的方式引入的,然后可以用。 这个是什么意思? |
3
sneezry 2018-06-22 15:25:00 +08:00 via iPhone
|
4
zcdll OP @sneezry 感谢!
我刚才查了好些东西,大概懂你说的意思了。 不过有新的疑问了,我看介绍说是,通过 npm i @types/dom-to-image -S 这样的方式安装的的话,会按照这些 types。 但是我的安装方式是 npm i dom-to-image -S,而且 package.json 里面也没有 types 这个字段。 社区维护的 types 在 https://www.npmjs.com/package/@types/dom-to-image 这里,那么 他是怎么进入我的项目中的呢? 我全局搜索了一下,没有找到 dom-to-image 的 d.ts |
5
aaronly 2018-06-22 16:35:41 +08:00
|