2

我正在将 React DnD 添加到我正在构建的应用程序中,并且已经意识到 ES7 装饰器不起作用(据我所知),语法如下:

@DragDropContext(HTML5Backend)
export class App extends React.Component {
    ...
}
App.displayName = 'My App'

但是,如果我删除该App.displayName行,一切都会好起来的。为什么?

我应该如何设置 displayName 属性?

4

1 回答 1

3

由于您已经在使用 ES7 功能,因此您可以使用 ES7类属性。这些处于第 0 阶段。

@DragDropContext(HTML5Backend)
export class App extends React.Component {
    static displayName = 'My App';
    //or just
    //displayName = 'My App';
}

如果您使用的是 babel,则需要使用

babel --stage 0

或者

babel --optional es7.classProperties
于 2015-08-18T10:29:11.360 回答