我有一个正在运行的应用程序(带有SSR)。最近,我尝试添加decorator
支持。我已经完成了配置,并且应用程序在浏览器中运行时运行良好(因为在浏览器中运行的代码是babel编译的)。
但是代码(包含装饰器的组件)在服务器端呈现时会中断-可能是因为正在执行的代码没有被转译并且节点无法理解@
符号。
它抛出错误以下
(node:1932) UnhandledPromiseRejectionWarning: SyntaxError:
src/components/common/InputBox/InputBox.js: Unexpected token (8:0)
import './InputBox.scss';
7 |
> 8 | @autobind
| ^
9 | class InputBox extends Component {
10 | constructor(props) {
11 | super(props);
我该如何解决?
谢谢
答案 0 :(得分:1)
似乎您尚未设置对装饰器的支持。这意味着您的代码没有被转换,并且using GMap.NET;
using GMap.NET.MapProviders;
GMaps.Instance.Mode = AccessMode.ServerAndCache;
map.CacheLocation = @"maps";
map.Zoom = zoom;
map.Position = new PointLatLng(lat, lng);
(运行服务器脚本)不知道如何处理node
类型的代码。装饰器处于第二阶段(请参见https://tc39.github.io/proposal-decorators/),而不是该语言的一部分。如果您使用babel转换代码,请添加相应的插件(@foo
)。