问题描述
我想用 postcss-loader 设置 autoprefixer 插件。 因为显然 vue-loader 在版本 15 中默认不激活 autoprefixer。 我尝试了几种方法来做到这一点,将 postcss 配置放在一个单独的文件中,在 package.json 和 vue.config.js 文件中。
我设法得到的唯一结果是编译错误或没有错误但没有自动添加前缀。
如果你有给我的解决方案,我很感兴趣。
package.json :
{
"name": "lion_coach_espace_membre","private": true,"scripts": {
"build": "vue-cli-service build","test:unit": "vue-cli-service test:unit","test:cypress": "npx cypress open","lint": "vue-cli-service lint","format": "eslint -c .eslintrc.js --fix src/","start:dev": "vue-cli-service serve"
},"dependencies": {
"axios": "^0.21.1","core-js": "^3.14.0","date-fns": "^2.22.1","js-cookie": "^2.2.1","jwt-decode": "^3.1.2","querystring-ts": "^1.0.1","regenerator-runtime": "^0.13.7","register-service-worker": "^1.7.1","vue": "^2.6.14","vue-Meta": "^2.4.0","vue-router": "^3.5.1","vuetify": "^2.5.3","vuex": "^3.6.2","vuex-extensions": "^1.1.5"
},"devDependencies": {
"@types/jest": "^24.0.19","@types/js-cookie": "^2.2.6","@typescript-eslint/eslint-plugin": "^2.33.0","@typescript-eslint/parser": "^2.33.0","@vue/cli-plugin-babel": "^4.5.13","@vue/cli-plugin-eslint": "^4.5.13","@vue/cli-plugin-pwa": "^4.5.13","@vue/cli-plugin-router": "^4.5.13","@vue/cli-plugin-typescript": "^4.5.13","@vue/cli-plugin-unit-jest": "^4.5.13","@vue/cli-service": "^4.5.13","@vue/eslint-config-airbnb": "^5.0.2","@vue/eslint-config-typescript": "^5.0.2","@vue/test-utils": "^1.2.0","autoprefixer": "^10.2.6","cypress": "^7.5.0","eslint": "^7.28.0","eslint-import-resolver-alias": "^1.1.2","eslint-plugin-import": "^2.23.4","eslint-plugin-vue": "^6.2.2","postcss": "^8.3.1","postcss-loader": "^5.3.0","postcss-preset-env": "^6.7.0","prettier": "2.2.1","sass": "^1.34.1","sass-loader": "^10.0.0","typescript": "^3.9.9","vue-cli-plugin-vuetify": "^2.4.1","vue-template-compiler": "^2.6.14","vuetify-loader": "^1.7.2"
},"browserslist": [
"> 1%","last 2 versions","not dead"
],"postcss": {
"plugins": [
"autoprefixer"
]
}
}
vue.config.js :
module.exports = {
transpileDependencies: ["vuetify"],chainWebpack: (config) => {
config.module
.rule("css")
.test(/\.css$/)
.use("postcss-loader")
.loader("postcss-loader")
.options({
postcssOptions: {
plugins: [
[
"autoprefixer",{
},],},});
},// css: {
// loaderOptions: {
// css: {
// importLoaders: 1,// },// postcss: {
// test: /\.vue$/i,// loader: "postcss-loader",// options: {
// postcssOptions: {
// plugins: [
// [
// "postcss-preset-env",// ],// ],// },// },// },// },pages: {
index: {
entry: "src/main",// the source template
template: "public/index.html",// output as dist/index.html
filename: "index.html",// when using title option,// template title tag needs to be <title><%= htmlWebpackPlugin.options.title %></title>
title: "Lion Coach - Espace Membre",pwa: {
name: "Lion Coach - Espace Membre",themeColor: "#2F2362",assetsversion: "2",workBoxOptions: {
skipwaiting: true,manifestOptions: {
short_name: "Lion Coach",display: "standalone",background_color: "#FFFFFF",start_url: ".",icons: [
{
src: "./img/icons/android-chrome-192x192.png",sizes: "192x192",type: "image/png",{
src: "./img/icons/android-chrome-512x512.png",sizes: "512x512",{
src: "./img/icons/android-chrome-maskable-192x192.png",purpose: "maskable",{
src: "./img/icons/android-chrome-maskable-512x512.png",{
src: "./img/icons/apple-touch-icon-60x60.png",sizes: "60x60",{
src: "./img/icons/apple-touch-icon-76x76.png",sizes: "76x76",{
src: "./img/icons/apple-touch-icon-120x120.png",sizes: "120x120",{
src: "./img/icons/apple-touch-icon-152x152.png",sizes: "152x152",{
src: "./img/icons/apple-touch-icon-180x180.png",sizes: "180x180",};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)