标签: nx-workspace

在 nx project.json 中使用环境变量

我使用nx作为我的 monorepo 管理工具,其中包含 typescript api 和 Angular 前端。
现在我正在尝试让我的项目在github codespaces内运行。

当我尝试为它们提供服务时,除了角度应用程序之外,一切都工作正常。
我得到和错误Invalid Host/Origin header。可以使用该--public-host标志来解决此问题。

这就是我现在如何使用 codespaces 环境变量CODESPACE_NAME和 nx cli 来服务我的 Angular 应用程序:

npx nx serve application --publicHost=${CODESPACE_NAME}-4080.githubpreview.dev:443
Run Code Online (Sandbox Code Playgroud)

我现在的问题是,是否可以在内部配置一个新目标project.json来为我的应用程序提供服务,例如npx nx run application:codespaces

我已经尝试创建一个新目标,但它无法解析环境变量:

...
 "codespaces": {
  "executor": "@angular-devkit/build-angular:dev-server",
  "configurations": {
    "production": {
      "browserTarget": "console:build:production"
    },
    "development": {
      "browserTarget": "console:build:development"
    }
  },
  "defaultConfiguration": "development",
  "options": {
    "publicHost": "${CODESPACE_NAME}-4080.githubpreview.dev:443",
    "port": 4080
  }
},
...
Run Code Online (Sandbox Code Playgroud)

angular nx-workspace

10
推荐指数
1
解决办法
5428
查看次数

如何在 Nx 工作区 Angular 库中为 Storybook 启用 Tailwind.css?

我在 Nx 工作区中创建了一个 Angular 库来提供 ui 组件(ui-kit)。我向这个库添加了 Storybook,效果很好。现在我还想包括 Tailwind,因为组件使用了它。

我使用该nx generate @nrwl/angular:setup-tailwind --project=ui-kit --buildTarget=build-storybook命令为该库设置 tailwind。该库是可构建的。

我有一个 tailwind.config.js ,如下所示:

const { createGlobPatternsForDependencies } = require('@nrwl/angular/tailwind');
const { join } = require('path');

module.exports = {
  content: [
    join(__dirname, 'src/**/!(*.stories|*.spec).{ts,html}'),
    ...createGlobPatternsForDependencies(__dirname),
  ],
  theme: {
    extend: {},
  },
  plugins: [],
};
Run Code Online (Sandbox Code Playgroud)

并添加了 tailwind-imports.css 内容

@tailwind base;
@tailwind components;
@tailwind utilities;
Run Code Online (Sandbox Code Playgroud)

作为导入到preview.js库的 .storybook 文件夹中。

但是,没有顺风。

是否有任何可遵循的方法或一些使用 nx、Angular、storybook 和 Tailwind 的运行示例?

使用nx版本13.8.3

非常感谢您的帮助!

tailwind-css nrwl-nx angular-storybook nx-workspace

5
推荐指数
1
解决办法
4563
查看次数

可构建的库无法从不可构建的库导入或导出(eslint)

当我从库之一导入接口时出现上述错误:

import { DetailsProps } from '@vite/prop-types'; //error
import styles from './header.module.less';

const initailDetails: DetailsProps = {
  name: 'Arif',
  city: 'Chennai',
  pin: 600019,
};
export function Header() {
  return (
    <div className={styles['container']}>
      <h1>Welcome to Header!</h1>
      <ul>
        {Object.values(initailDetails).map((v) => (
          <li key={v}>{v}</li>
        ))}
      </ul>
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

NX报告:

  Node : 16.13.2
   OS   : darwin arm64
   npm  : 8.1.2
   
   nx : 15.3.3
   @nrwl/angular : Not Found
   @nrwl/cypress : 15.3.3
   @nrwl/detox : Not Found
   @nrwl/devkit : 15.3.3
   @nrwl/esbuild : Not Found
   @nrwl/eslint-plugin-nx : …
Run Code Online (Sandbox Code Playgroud)

nomachine-nx nx-workspace

4
推荐指数
1
解决办法
4609
查看次数

在 NX monorepo 中使用 VSCode 调试 Next.js 应用程序

我目前正在尝试在NX monorepo内调试Next.js 应用程序

我已经Auto Attach在 VSCode 的User Settings中启用了该设置。

当我使用serve命令启动应用程序时,我可以在调试控制台中看到输出,还可以通过在调试控制台中键入process或 来打印出当前进程。console.log(process)

VSCode 调试控制台输出

但是,我无法在服务器端代码中设置任何断点,例如在getServerSideProps.

我检查了Next.js 调试文档中缺少的部分,并尝试NODE_OPTIONS='--inspect'通过 .env 文件在我的 Next.js 应用程序中进行设置。

更新: 看起来NX 上缺少这个功能

monorepo next.js nx-workspace

3
推荐指数
1
解决办法
4270
查看次数

使用 NX 进行剧作家测试

我有一个 NX 工作区,其中有一个名为 的应用程序my-app。我想my-app使用 NX 控制台运行应用程序的 Playwright 测试。目前 NX 不支持 Playwright 插件,因此我根据本教程创建了一个自定义 NX 执行器。我已经为执行者创建了必要的文件。之后,我在应用程序的project.json文件中注册了自定义 e2e 命令。剧作家配置文件保留在该my-app文件夹中。

当我运行时nx run my-app:e2e,执行程序已被执行,但由于某种原因,剧作家没有启动。相反,我看到一个错误。

在此输入图像描述

当我在控制台中手动运行时,剧作家触发的命令启动并进行必要的nx run my-app:e2e测试。npx playwright test --config=apps/my-app/playwright.config.ts

项目.json

...
...
...
"e2e": {
  "executor": "./tools/executors/playwright:playwright",
  "options": {
    "path": "apps/my-app/playwright.config.ts"
  }
}
Run Code Online (Sandbox Code Playgroud)

执行器.json

{
  "executors": {
    "playwright": {
      "implementation": "./impl",
      "schema": "./schema.json",
      "description": "Runs Playwright Test "
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

隐含的ts

export default async function echoExecutor(
  options: PlaywrightExecutorOptions, …
Run Code Online (Sandbox Code Playgroud)

node.js playwright nx-workspace

2
推荐指数
1
解决办法
5042
查看次数