由于`@ withGesture`,项目无法编译

时间:2018-09-27 16:22:40

标签: javascript reactjs

我有这段可以在codesandbox中编译的代码。但是,如果克隆并npm install然后尝试在本地运行它,则会出现编译错误:

Failed to compile.
./src/index.js
Syntax error: Unexpected token (9:0)

   7 | import './styles.css'
   8 |
>  9 | @withGesture // https://github.com/drcmda/react-with-gesture
     | ^
  10 | class Slider extends React.Component {
  11 |   render() {
  12 |     const { xDelta, down, children } = this.props

react-with-gesture模块显示了使用它的不同方式,但是我想知道为什么我会得到编译错误以及是否有防止它的方法。感谢任何答案。

1 个答案:

答案 0 :(得分:1)

react-scripts维护者decline to support decorators。我不知道CodeSandbox在做什么使这项工作。一种替代方法是custom-react-scripts。或者,您可以只使用函数调用来代替装饰器:

class OrigSlider extends React.Component {
  // ...
}
let Slider = withGesture(OrigSlider);

这样做时,我得到一个不相关的错误,看起来像@babel/runtimereact-spring之间的不兼容。升级到最新的react-spring使服务器为我运行。 Final codesandbox