【发布时间】:2021-04-26 19:10:33
【问题描述】:
在我的资源/app.js 中,我需要自己编写的验证脚本。编译 (npm run dev) 我的 javascript 文件时,我收到以下警告。
Module build failed (from ./node_modules/babel-loader/lib/index.js):
SyntaxError: /resources/js/myvendor/small-form-validator.js: Support for the experimental syntax 'classProperties' isn't currently enabled (2:13):
我的文件:
app.js
require('./bootstrap');
require('./myvendor/small-form-validator');
/resources/js/myvendor/small-form-validator.js
class SmallFormValidator {
errMsgs = {
required: 'This field is required!',
string: 'Not valid string.',
...
我的 package.json
"private": true,
"scripts": {
"dev": "npm run development",
"development": "mix",
"watch": "mix watch",
"watch-poll": "mix watch -- --watch-options-poll=1000",
"hot": "mix watch --hot",
"prod": "npm run production",
"production": "mix --production"
},
"devDependencies": {
"axios": "^0.21",
"bootstrap": "^4.0.0",
"jquery": "^3.2",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"popper.js": "^1.12",
"postcss": "^8.1.14",
"resolve-url-loader": "^3.1.0",
"sass": "^1.15.2",
"sass-loader": "^8.0.0"
}
}
系统抱怨errMsgs = {...}之后的赋值运算符(“=”字符)。
问题是我用类样式而不是原型样式编写我的 javascript 吗?
更新
在我的情况下,解决方案是在根目录中创建一个新的 .babelrc 文件,其中包含加载 Babel plugin-proposal-class-properties 插件的顺序。
{
"plugins": ["@babel/plugin-proposal-class-properties"]
}
查看 codedge 的正确答案!
【问题讨论】:
标签: javascript laravel npm webpack prototype