使用 animate.css 包在 npm 运行 上解析 "Cannot read property 'unprefixed' of undefined"
Resolving "Cannot read property 'unprefixed' of undefined" on npm run serve with animate.css package
我正在使用 Vue、Quasar 和 animate.css 包开发一个应用程序,用于我网站上的 CSS 动画。一切都很顺利,直到最近我遇到了 npm run build
命令的问题,这导致了标题中的错误。经过一些调查,我尝试安装 postcss-rtlcss
包,这导致 npm run serve
上也发生了这个错误。请注意,我是 Vue 和 node.js 生态系统的新手,所以如果我做错了什么,请告诉我。
运行npm run serve
时的错误
ERROR Failed to compile with 1 error 10:28:49 PM
error in ./node_modules/animate.css/animate.css
Syntax Error: TypeError: Cannot read property 'unprefixed' of undefined
@ ./node_modules/animate.css/animate.css 4:14-163 15:3-20:5 16:22-171
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://10.0.0.251:8080&sockPath=/sockjs-node ./node_modules/@vue/cli-service/node_modules/webpack/hot/dev-server.js ./src/main.js
除此之外,这是我的package.json。
{
"name": "socialapp",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@quasar/extras": "^1.0.0",
"animate.css": "^4.1.1",
"core-js": "^3.6.5",
"css-loader": "^6.2.0",
"quasar": "^2.0.0",
"vue": "^3.1.4",
"vue-body-class": "^3.0.2",
"vue-router": "^4.0.0-0",
"vue-style-loader": "^4.1.3",
"webpack": "^4.45.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-plugin-router": "^4.5.13",
"@vue/cli-service": "~4.5.0",
"@vue/compiler-sfc": "^3.0.0",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^7.0.0",
"postcss-rtl": "^1.2.3",
"sass": "1.32.12",
"sass-loader": "^10.1.0",
"vue-cli-plugin-quasar": "~4.0.1"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/vue3-essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
如果您需要我提供任何其他信息,请在评论中告诉我,我会尽力提供。谢谢你的帮助。
我在 package.json 中将我的 PostCSS 版本降级到 ^7.0.36
解决了这个问题。虽然这可能会导致依赖关系树出现问题,但当我尝试使用 --force
参数进行安装时,它工作得很好。现在所有命令都可以正常工作。
如果您使用的是 postcss 版本 8,请确保您还拥有 postcss-preset-env 的最新版本,因为由于与低于 8
的版本相关的安全问题,您不想降级 postcss
"postcss-preset-env": "^7.2.3"
我正在使用 Vue、Quasar 和 animate.css 包开发一个应用程序,用于我网站上的 CSS 动画。一切都很顺利,直到最近我遇到了 npm run build
命令的问题,这导致了标题中的错误。经过一些调查,我尝试安装 postcss-rtlcss
包,这导致 npm run serve
上也发生了这个错误。请注意,我是 Vue 和 node.js 生态系统的新手,所以如果我做错了什么,请告诉我。
运行npm run serve
ERROR Failed to compile with 1 error 10:28:49 PM
error in ./node_modules/animate.css/animate.css
Syntax Error: TypeError: Cannot read property 'unprefixed' of undefined
@ ./node_modules/animate.css/animate.css 4:14-163 15:3-20:5 16:22-171
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://10.0.0.251:8080&sockPath=/sockjs-node ./node_modules/@vue/cli-service/node_modules/webpack/hot/dev-server.js ./src/main.js
除此之外,这是我的package.json。
{
"name": "socialapp",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@quasar/extras": "^1.0.0",
"animate.css": "^4.1.1",
"core-js": "^3.6.5",
"css-loader": "^6.2.0",
"quasar": "^2.0.0",
"vue": "^3.1.4",
"vue-body-class": "^3.0.2",
"vue-router": "^4.0.0-0",
"vue-style-loader": "^4.1.3",
"webpack": "^4.45.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-plugin-router": "^4.5.13",
"@vue/cli-service": "~4.5.0",
"@vue/compiler-sfc": "^3.0.0",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^7.0.0",
"postcss-rtl": "^1.2.3",
"sass": "1.32.12",
"sass-loader": "^10.1.0",
"vue-cli-plugin-quasar": "~4.0.1"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/vue3-essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
如果您需要我提供任何其他信息,请在评论中告诉我,我会尽力提供。谢谢你的帮助。
我在 package.json 中将我的 PostCSS 版本降级到 ^7.0.36
解决了这个问题。虽然这可能会导致依赖关系树出现问题,但当我尝试使用 --force
参数进行安装时,它工作得很好。现在所有命令都可以正常工作。
如果您使用的是 postcss 版本 8,请确保您还拥有 postcss-preset-env 的最新版本,因为由于与低于 8
的版本相关的安全问题,您不想降级 postcss"postcss-preset-env": "^7.2.3"