Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Laravel:支持实验语法';classProperties';isn';t当前已启用_Javascript_Laravel_Npm_Webpack_Prototype - Fatal编程技术网

Javascript Laravel:支持实验语法';classProperties';isn';t当前已启用

Javascript Laravel:支持实验语法';classProperties';isn';t当前已启用,javascript,laravel,npm,webpack,prototype,Javascript,Laravel,Npm,Webpack,Prototype,在my resource/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 'classProp

在my resource/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');
class SmallFormValidator {
    errMsgs = {
        required: 'This field is required!',
        string: 'Not valid string.',
        ...
/resources/js/myvendor/small form validator.js

require('./bootstrap');
require('./myvendor/small-form-validator');
class SmallFormValidator {
    errMsgs = {
        required: 'This field is required!',
        string: 'Not valid string.',
        ...
My 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插件建议类属性插件

{
  "plugins": ["@babel/plugin-proposal-class-properties"]
}

查看codedge提供的正确answear

您需要在项目的根目录中创建一个
.babelrc
,并添加

{
  "plugins": ["@babel/plugin-proposal-class-properties"]
}

然后运行
npm install——保存dev@babel/plugin建议类属性来安装包,然后
npm run watch
(分别是
npm run dev
)来编译所有内容。

这个解决方案适合我。是否可以在webpack.mix.js中配置此插件?在一个文件中包含所有设置?