首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法安装开普勒React - TypeScript

无法安装开普勒React - TypeScript
EN

Stack Overflow用户
提问于 2020-04-22 02:38:43
回答 1查看 296关注 0票数 1

我这样安装了Kepler.g:

代码语言:javascript
复制
npm i kepler.gl

它被添加到我的package.json中:

代码语言:javascript
复制
"kepler.gl": "^2.1.2"

但是,如果我尝试导入:

代码语言:javascript
复制
import keplerGlReducer from "kepler.gl/reducers";

我收到一个错误,

代码语言:javascript
复制
Could not find a declaration file for module 'kepler.gl/reducers'. '/Users/grannyandsmith/web/web-admin/node_modules/kepler.gl/reducers.js' implicitly has an 'any' type.
  Try `npm install @types/kepler.gl` if it exists or add a new declaration (.d.ts) file containing `declare module 'kepler.gl/reducers';`ts(7016)

我也试过了

代码语言:javascript
复制
npm install @types/kepler.gl

但不出所料,它给了我npm ERR! code E404 npm ERR! 404 Not Found - GET https://registry.npmjs.org/@types%2fkepler.gl - Not found

我该如何解决这个问题呢?

编辑:

tsconfig文件:

代码语言:javascript
复制
{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "preserve",
    "typeRoots": ["types/global.d.ts"]
  },
  "include": [
    "src"
  ]
}
EN

回答 1

Stack Overflow用户

发布于 2020-04-22 02:44:57

如果类型对于您正在引入的特定库不可用。这里有两个选项。

  • 自己添加类型(这可能很痛苦,因为您必须了解完整的API )。这样做的好处是所有的类型都是可用的。
  • 另一种选择是创建一个声明文件*d.ts文件,在这个文件中让TS知道,嘿,我知道我在做什么。缺点是你没有可用的类型,自动补全功能也不能工作。

@types/index.d.ts (需要让TS知道才能在这里找到类型)

代码语言:javascript
复制
declare module 'kepler.gl/reducers';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61350728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档