在 Codesandbox 中,为什么不能创建私有 class 字段? (Javascript)
In Codesandbox, Why cant you make private class fields? (Javascript)
问题
出于某种原因,每次我尝试在 Codesndbox 中创建私有 class 字段时,它都会显示:
`SyntaxError: /Binary.js: Unexpected character '#' (7:2)`
### SyntaxError ###
**/Binary.js: Unexpected character '#' (7:2)**
>#privateMethod() {...
^
我在 codesandbox 上的 MWE:https://codesandbox.io/s/question-private-fields-vxw1j?file=/package.json
怎么了!!!
额外数据
浏览器: Chrome
我想通了!
回答
打开沙盒
点击屏幕左侧的设置图标
向下滚动直到找到“.babelrc”文件并单击“创建”。 (你可能需要做一个Sandbox-Github Repo)
现在关闭文件并单击页面图标返回文件浏览(在设置图标上方)
向下滚动直到找到“依赖项”window
转到搜索栏并将其复制并粘贴到其中 @babel/plugin-proposal-private-methods
完成后应该会出现一些选项,单击第一个
现在向上滚动并找到“.babelrc”文件并单击它
现在你应该看到一个 JSON 文件打开,向下滚动直到你看到这个:
"plugins": [
"transform-runtime"
],
- 现在复制:
"plugins": [
"transform-runtime",
"@babel/plugin-proposal-private-methods"
],
并将其粘贴到插件数组的顶部。文件现在应该如下所示:
{
"presets": [
"env"
],
"plugins": [
"transform-runtime",
"@babel/plugin-proposal-private-methods"
],
"parserOpts": {
"plugins": [
"dynamicImport"
]
}
}
现在它应该可以工作了!!
问题
出于某种原因,每次我尝试在 Codesndbox 中创建私有 class 字段时,它都会显示:
`SyntaxError: /Binary.js: Unexpected character '#' (7:2)`
### SyntaxError ###
**/Binary.js: Unexpected character '#' (7:2)**
>#privateMethod() {...
^
我在 codesandbox 上的 MWE:https://codesandbox.io/s/question-private-fields-vxw1j?file=/package.json
怎么了!!!
额外数据
浏览器: Chrome
我想通了!
回答
打开沙盒
点击屏幕左侧的设置图标
向下滚动直到找到“.babelrc”文件并单击“创建”。 (你可能需要做一个Sandbox-Github Repo)
现在关闭文件并单击页面图标返回文件浏览(在设置图标上方)
向下滚动直到找到“依赖项”window
转到搜索栏并将其复制并粘贴到其中 @babel/plugin-proposal-private-methods
完成后应该会出现一些选项,单击第一个
现在向上滚动并找到“.babelrc”文件并单击它
现在你应该看到一个 JSON 文件打开,向下滚动直到你看到这个:
"plugins": [
"transform-runtime"
],
- 现在复制:
"plugins": [
"transform-runtime",
"@babel/plugin-proposal-private-methods"
],
并将其粘贴到插件数组的顶部。文件现在应该如下所示:
{
"presets": [
"env"
],
"plugins": [
"transform-runtime",
"@babel/plugin-proposal-private-methods"
],
"parserOpts": {
"plugins": [
"dynamicImport"
]
}
}
现在它应该可以工作了!!