6

Autoprefixer 不适用于 parcel 1.9.7:我有我的 src 文件夹,我有 .postcssrc 文件和 .postcssrc 文件内相同文件夹内容中的样式文件:{ "plugins": { "autoprefixer": true } }

parcel 安装了 package npm install -g parcel-bundler json dev 依赖项:

"devDependencies": {
 "autoprefixer": "^9.1.3",
 "node-sass": "^4.9.3",
 "postcss-modules": "^1.3.2"
},

也许有人知道可能是什么问题?

4

3 回答 3

1

有点晚了,但可能对其他人有帮助。唯一有效的就是放

"postcss": {
    "plugins": {
      "autoprefixer": {}
    }

直接在 package.json 中

所以,package.json 看起来像这样:

{
  "name": "parcel",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "dev": "parcel src/index.html",
    "prod": "parcel build src/index.html"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "abstracts": "^0.2.3",
    "postcss-modules": "^1.4.1"
  },
  "devDependencies": {
    "autoprefixer": "^9.7.1",
    "sass": "^1.23.3"
  },
  "postcss": {
    "plugins": {
      "autoprefixer": {}
    }
  },
  "description": ""
}
于 2019-12-22T22:29:57.577 回答
1

Post-css 带有开箱即用的 autoprefixer。

Parcel bundler 带有开箱即用的 Post-css。

所以你唯一需要的包是parcel-bundler在你的package.json. (另外你只需要“sass”包而不是“node-sass”。额外的包可能是导致问题的原因。

要正确配置它,请尝试此示例 postcss 设置,其中至关重要的是autoprefixer对象和overrideBrowserslist数组不为空:

{
  ...

  "devDependencies": {
    "parcel-bundler": "^1.12.4",
    "sass": "^1.25.0"
  },
  "postcss": {
    "plugins": {
      "autoprefixer": {
        "overrideBrowserslist": [
          ">1%",
          "last 4 versions",
          "Firefox ESR",
          "ie >= 9"
        ]
      }
    }
  }
}

在 CSS 中向元素添加过渡后,前缀会在开发工具中检查和查看样式后显示。

于 2020-02-20T23:02:36.030 回答
0

2022 年 2 月包裹 2.3.1 和自动前缀 10.4.2

我通过将配置移动到package.json而不是.postcssrc或其他解决了我的问题,顺便说一句,包裹文档没有说明这一点,但前缀仅在将配置直接插入package.json.

有可能要让 autoprefixer 工作,必须指定浏览器列表。

package.json

    "postcss": {
        "plugins": {
          "autoprefixer": {
            "browsers": [
              ">1%",
              "last 4 versions",
              "Firefox ESR",
              "not ie < 9"
            ]
          }
        }
      }
于 2022-02-20T17:49:40.773 回答