首页 > 解决方案 > Screeps:无法使用 Typescript 启动器导入某些模块

问题描述

我正在使用标准的打字稿启动器,并且在将模块传输到 screeps 时遇到了一些问题。例如,

import * as faker from 'faker';

export function creepNamer() {
  let randomName = faker.name.findName();
  return _.kebabCase(`${randomName}`);
}

给我一个name在faker上不存在的错误。当我检查faker时,我发现undefined

有谁知道为什么有些模块莫名其妙地无法运行/什么都不导出?

标签: typescriptscreeps

解决方案


  1. 您可以发布您项目的文件夹结构,以便我可以深入了解您的问题吗?
  2. 试图像这样导入它?“./文件夹/脚本”
  3. 模块分辨率正确吗?
  4. 您是否检查了 tsconfig.json 是否正确 in/-exclude ?
  5. 有些东西不适用于screeps。示例:来自节点的“http”。

示例 tsconfig.json:

    {
  "compilerOptions": {
    "module": "esnext",
    "lib": ["esnext"],
    "target": "es2017",
    "moduleResolution": "Node",
    "outDir": "dist",
    "baseUrl": "src/",
    "sourceMap": true,
    "strict": true,
    "experimentalDecorators": true,
    "noImplicitReturns": true,
    "allowSyntheticDefaultImports": true,
    "allowUnreachableCode": false
  },
  "include": [
      "src/**/*.ts"
  ],
  "exclude": [
      "dist",
      "node_modules"
  ]
}

是的,我等你的答复。那我可以试着更好地帮助你。问候~


推荐阅读