配置postcss.config.js(主要是使用tailwndcss)的规则到底是什么

用于展示如何配置postcss.config.js的变体数量非常令人困惑。有一些示例(如tailwindcss文档中的示例)使用以下内容:

用于展示如何配置postcss.config.js的变体数量非常令人困惑。有一些示例(如tailwindcss文档中的示例)使用以下内容:

// Example 1:
module.exports = {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
}

然后有那些需要库:

// Example 2:
module.exports = {
  plugins: {
    require('tailwindcss'),
    require('postcss-preset-env')({
      stage: 0,
      'nesting-rules': true
    })
  },
}

其他人在配置module.exports之前需要外部库:

// Example 3:
const tailwindcss = require('tailwindcss');
const postcssPresetEnv = require('postcss-preset-env');
module.exports = {
  plugins: {
    tailwindcss,
    postcssPresetEnv
  },
}

当必须合并未根据默认值命名的配置文件时,还有一些必要的文件。

今天我得到这个错误,当运行yarn dev与 postcss.config.js 如示例 2 所示:

Syntax Error: /[path]/_pod-test/postcss.config.js:3
    require('tailwindcss'),
             ^^^^^^^^^^^
SyntaxError: Unexpected string

当我删除“tailwindcss”行,同样的事情发生在“postcss-preset-env”:

Syntax Error: /Volumes/_III_/Z_WWW/_ZZZ PoD/_pod-test/postcss.config.js:3
    require('postcss-preset-env')({
            ^^^^^^^^^^^^^^^^^^^^
SyntaxError: Unexpected string

当我切换到示例 1 中所示的设置时,我得到这个错误:

Syntax Error: Error: PostCSS plugin tailwindcss requires PostCSS 8.
Migration guide for end-users:
https://github.com/postcss/postcss/wiki/PostCSS-8-for-end-users

我确实使用 postcss 8.3.9!

这一切都发生在使用vue-cli作为 Vue2 项目设置的项目中。

我必须申请哪个巫术才能使这个设置正常工作?

2

我发布的示例 1 和 2 之间有一个微妙但非常重要的区别。

示例 2 实际上是错误的!

示例 1 使用对象来配置插件的参数,而第二个示例使用函数调用。这些必须放在ARRAY中(意思是:括号而不是花括号)。

这将是示例 2 的正确版本:

// Example 2 fixed:
module.exports = {
  plugins: [  // <= here we MUST use brackets!
    ... [function calls] ...
  ],
}

我还没有测试,如果这也是真实的例子 3(但我假设如此)。

希望这有助于某人!

2

package.json我有:

  "postcss": {
    "plugins": [
      "postcss-import",
      "tailwindcss",
      "postcss-preset-env",
      "autoprefixer",
      "cssnano"
    ]
  }

这是我生产的完整设置,我有 tailwind3.0.23,但无论如何它可能适用于任何版本。

如果您使用cssnano,则不需要为postcss-preset-env设置tailwindcss/nesting顺风在其文档中推荐:https://tailwindcss.com/docs/using-with-preprocessors#nesting

为什么?因为cssnano合并了它们都生成的重复代码。顺风团队成员之一建议使用cssnano的解决方法:https://github.com/tailwindlabs/tailwindcss/issues/4634#issuecomment-861392246

0

在您的终端中运行以下命令通过 npm 安装 tailwind css 及其依赖项。

npm install tailwindcss postcss autoprefixer

当您尝试运行项目时,可能会收到您提到的错误消息

Error: PostCSS plugin tailwindcss requires PostCSS 8.

运行以下代码以卸载以前的安装并修复错误

npm uninstall tailwindcss postcss autoprefixer 
npm install tailwindcss@npm:@tailwindcss/postcss7-compat@tailwindcss/postcss7-compat postcss@^7 autoprefixer@^9

接下来,您需要生成 Tailwind 和 PostCSS 配置文件

npx tailwindcss init -p

你的配置文件应该看起来像这样

postcss.config 文件

module.exports = {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
};

tailwindcss.config 文件

module.exports = {
  future: {
    // removeDeprecatedGapUtilities: true,
    // purgeLayersByDefault: true,
  },
  purge: [],
  theme: {
    extend: {},
  },
  variants: {},
  plugins: [],
};

最后,打开您的 main.js 文件并导入包含 tailwind 指令的 tailwind.css 文件,即

import './css/tailwind.css'
0

对我来说是可以正确运行的此配置:

// Example 3:
const tailwindcss = require('tailwindcss');
const postcssPresetEnv = require('postcss-preset-env');
module.exports = {
  plugins: {
    tailwindcss,
    postcssPresetEnv
  },
}

和此版本的库:

"postcss": "^8.4.6",
"postcss-cli": "^9.1.0",
"tailwindcss": "^3.0.18",

我不尝试所有功能 postcss 在这个时候,但基本进程文件到 CLI 正确运行...

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(371)
如何从AWSCognito中的所有设备注销
上一篇
如何在solr6.4版本上启用开箱即用的“techproducts”示例
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(43条)