是 var { Route, Redirect, RouteHandler, Link } = Router;在 Javascript 中有效吗? [英] Is var { Route, Redirect, RouteHandler, Link } = Router; valid in Javascript?
问题描述
这在 Javascript 中是什么意思?我在 react-router 示例
What does this mean in Javascript ? I found this in react-router examples
var { Route, Redirect, RouteHandler, Link } = Router;
通过 browserify 运行时出现以下错误.
I get the following error when it is run through browserify.
"Uncaught SyntaxError: Unexpected token {"
https://github.com/rackt/react-router/blob/master/examples/dynamic-segments/app.js
Esprima 也给出了同样的错误:http://esprima.org/demo/validate.html
Esprima also gives the same error: http://esprima.org/demo/validate.html
推荐答案
显然它被称为解构赋值.
Apparently it's called a destructuring assignment.
来自这里的另一篇文章:
From another post here:
{x, y} = foo;
相当于
x = foo.x;
y = foo.y;
这是 ECMAScript 6 的一部分,Facebook 的 JSX 转换有一个可选标志,可以将选择的 ES6 语法(包括解构)转换为与 ES5 兼容的语法,react-router 使用.
This is part of ECMAScript 6, and Facebook's JSX transform has an optional flag to enable transpiling select ES6 syntax (including destructuring) to ES5-compatible syntax, which react-router uses.
这是 Mike Christensen 的原始帖子:
Here is the original post with answer by Mike Christensen:
这篇关于是 var { Route, Redirect, RouteHandler, Link } = Router;在 Javascript 中有效吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!