【问题标题】:Tailwind purge with Nx, no ProjectGraph error使用 Nx 进行顺风清除,没有 ProjectGraph 错误
【发布时间】:2022-11-04 12:53:07
【问题描述】:

这里的文档:https://nx.dev/l/r/guides/using-tailwind-css-in-react#introducing-nx-utility-for-better-tailwind-purging 建议使用createGlobPatternsForDependencies(__dirname) 以便于维护。

我在“@nrwl/angular/tailwind”中使用它,而不是“@nrwl/react/tailwind”。

当我使用它并触发我的应用程序的构建时,我收到以下错误:

[createGlobPatternsForDependencies] WARNING: There was no ProjectGraph available to read from, returning an empty array of glob patterns

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

我可以运行nx dep-graph 并且依赖关系图生成得很好。

编辑:我调试了这个,__dirname 文档说将用于推断父项目和依赖项的工作区相对目录路径但后来它在generate-globs.js 的第20 行失败了,因为filenameRelativeToWorkspaceRoot 是'',即它试图找到一个项目名称但__dirname 是工作区名称本身?

所以

purge: createGlobPatternsForDependencies(join(__dirname, 'apps/simple-app')),

没有给出 ProjectGraph 错误,但是

purge: createGlobPatternsForDependencies(__dirname), 确实

【问题讨论】:

  • 你有想过这个吗?
  • 还没有,新的 Tailwind 默认是 JIT 模式,所以我需要再看一下。
  • 所以出于好奇,purge: createGlobPatternsForDependencies(join(__dirname, 'apps/simple-app')), 在不处于 JIT 模式时实际上是否正确清除?
  • 它对我有用,但仅适用于一个应用程序,并且仅设置 enabled: true 这意味着它也会为本地开发人员清除。 NODE_ENV 没有通过还有一个单独的问题。
  • @cjones26 请参阅下面的答案 - 现在一切正常!

标签: angular tailwind-css nrwl-nx


【解决方案1】:

我还在 Github 上发布了 Nx 文档基于 React 的问题。

自从我提出这个问题以来,已经写了一篇博文:https://blog.nrwl.io/set-up-tailwind-css-with-angular-in-an-nx-workspace-6f039a0f4479

和文档在 Nx 网站上:https://nx.dev/guides/using-tailwind-css-with-angular-projects

但关键的学习是每个应用都有一个单独的 Tailwind 配置文件.

您可以使用共享 Tailwind 配置进行预设并使用它,但 createGlobPatternsForDependencies 预计是每个应用程序,所以 __dirname 作为项目名称会更有意义......

如果此时您仍然得到[createGlobPatternsForDependencies] WARNING: There was no ProjectGraph available to read from, returning an empty array of glob patterns,则可能存在循环依赖阻止代码执行,可以调试tailwind.js 文件节点模块/@nrwl/角/查看。

【讨论】:

    【解决方案2】:

    我仍然有这个错误。我已经调试了 createGlobPatternsForDependencies 函数中的 try/catch 语句,我看到它抛出错误“超出最大调用堆栈大小”。 Linter 和 dep-graph 没有说明循环依赖。检查循环依赖关系的可靠方法是什么?或者可能还有另一个问题导致堆栈大小错误?

    【讨论】:

      猜你喜欢
      • 2021-04-17
      • 2021-04-24
      • 2021-11-17
      • 2011-08-06
      • 2020-09-09
      • 2020-06-01
      • 2012-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多