首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >类型记录/纱线工作区-引用的项目不能禁用发射。

类型记录/纱线工作区-引用的项目不能禁用发射。
EN

Stack Overflow用户
提问于 2022-04-01 09:29:59
回答 1查看 3.3K关注 0票数 6

我正在尝试使用类型记录和纱线工作区设置一个monorepo项目。

该项目的结构如下:

代码语言:javascript
运行
复制
/example
/packages
  /lib1

示例是一个用于开发目的的应用程序。

当我使用yarn tsc --build --force时,我会得到以下错误:

代码语言:javascript
运行
复制
example/tsconfig.json:6:18 - error TS6310: Referenced project '/packages/intro' may not disable emit.

下面是示例的tsconfig.json:

代码语言:javascript
运行
复制
{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "./lib"
  },
  "references": [{ "path": "../packages/intro" }]
}

这个项目的根源是:

代码语言:javascript
运行
复制
{
  "$schema": "https://json.schemastore.org/tsconfig",
  "display": "React Native",
  "compilerOptions": {
    "allowJs": true,
    "allowSyntheticDefaultImports": true,
    "baseUrl": ".",
    "composite": true,
    "declaration": true,
    "esModuleInterop": true,
    "isolatedModules": true,
    "jsx": "react-native",
    "lib": ["es2017"],
    "module": "commonjs",
    "moduleResolution": "node",
    "noEmit": true,
    "paths": {
      "my-project/*": ["./packages/*/src"]
    },
    "resolveJsonModule": true,
    "skipLibCheck": true,
    "strict": true,
    "target": "esnext"
  },
  "exclude": [
    "packages/*/lib",
    "node_modules",
    "babel.config.js",
    "metro.config.js",
    "jest.config.js"
  ],
  "references": [{ "path": "./example" }, { "path": "./packages/lib1" }]
}

lib1 1的tsconfig.json:

代码语言:javascript
运行
复制
{
  "extends": "../../tsconfig.json",
  "compilerOptions": {
    "outDir": "./lib"
  }
}

正如您所看到的,我确实将noEmit设置为true,因此我不明白错误是什么。我尝试过在每个tsconfig文件中直接设置值,但这并没有像预期的那样做任何事情。

EN

回答 1

Stack Overflow用户

发布于 2022-05-01 22:41:53

noEmit设置为true将禁用发射,这就是错误的意思。您需要将noEmit设置为false以启用发射。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71704754

复制
相关文章

相似问题

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