我使用ES6-模块-转换程序,esprima和JSHint与esnext: true选项。JSHint抱怨说:
export default = { some: 'thing', other: 'thing' };但埃斯普瑞玛在我用
export default { some: 'thing', other: 'thing' };等级库说
export default AssignmentExpression ;
这让我认为JSHint需要更新,esprima因为没有任务而被正确地轰炸了。有人能在这里做我的决策者吗?
发布于 2014-01-25 02:17:30
实际上,AssignmentExpression可以是任何表达式,它是最顶层的表达式,包含所有其他表达式的表达式(参见等级库)。
然而,
export default = { some: 'thing', other: 'thing' };实际上不是赋值表达式,而是语法错误。如果在赋值表达式中使用赋值运算符,则需要左手侧和右侧。所以像这样的东西是有效的:
export default foo = { some: 'thing', other: 'thing' };仅仅使用对象文字应该是正确的,因为正如我所说的,AssignmentExpression可以是任何表达式。
所以Esprima似乎错了。
https://stackoverflow.com/questions/21344720
复制相似问题