我使用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) 我在 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
非常感谢您的帮助!
当我从库之一导入接口时出现上述错误:
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) 我目前正在尝试在NX monorepo内调试Next.js 应用程序。
我已经Auto Attach在 VSCode 的User Settings中启用了该设置。
当我使用serve命令启动应用程序时,我可以在调试控制台中看到输出,还可以通过在调试控制台中键入process或 来打印出当前进程。console.log(process)
但是,我无法在服务器端代码中设置任何断点,例如在getServerSideProps.
我检查了Next.js 调试文档中缺少的部分,并尝试NODE_OPTIONS='--inspect'通过 .env 文件在我的 Next.js 应用程序中进行设置。
更新: 看起来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) nx-workspace ×5
angular ×1
monorepo ×1
next.js ×1
node.js ×1
nomachine-nx ×1
nrwl-nx ×1
playwright ×1
tailwind-css ×1