分配左侧的 Javascript 对象括号表示法 ({ 导航 } =)
Javascript object bracket notation ({ Navigation } =) on left side of assign
我以前没有见过这种语法,想知道它到底是怎么回事。
var { Navigation } = require('react-router');
左侧的括号抛出语法错误:
意外令牌 {
我不确定 webpack 配置的哪个部分正在转换或语法的目的是什么。是和谐的事情吗?有人可以开导我吗?
它被称为解构赋值,它是 ES2015 标准的一部分。
解构赋值语法是一个 JavaScript 表达式, 可以使用 反映数组和对象文本构造的语法。
来源: MDN 上的解构赋值参考
对象解构
var o = {p: 42, q: true};
var {p, q} = o;
console.log(p); // 42
console.log(q); // true
// Assign new variable names
var {p: foo, q: bar} = o;
console.log(foo); // 42
console.log(bar); // true
数组解构
var foo = ["one", "two", "three"];
// without destructuring
var one = foo[0];
var two = foo[1];
var three = foo[2];
// with destructuring
var [one, two, three] = foo;
这是解构赋值。这是 ECMAScript 2015 的一个新功能。
var {
AppRegistry,
StyleSheet,
Text,
View,
} = React;
相当于:
var AppRegistry = React.AppRegistry;
var StyleSheet = React.StyleSheet;
var Text = React.Text;
var View = React.View;
var { Navigation } = require('react-router');
。使用解构来实现与...
var Navigation = require('react-router').Navigation;
。但可读性要高得多。
这是 ES6 中解构对象的新功能。
众所周知,这里发生了赋值操作,这意味着右侧值被分配给左侧变量。
var { Navigation } = require('react-router');
在这种情况下require('react-router')
该方法返回一个具有键值对的对象,如下所示:
{ Navigation: function a(){},
Example1: function b(){},
Example2: function c(){}
}
如果我们想在返回的对象中获取一个键,例如Navigation
变量,我们可以为此使用 Object 解构。
只有当我们手里有钥匙时,这才有可能。
因此,在赋值语句之后,局部变量Navigation
将包含function a(){}
另一个例子是这样的。
var { p, q } = { p: 1, q:2, r:3, s:4 };
console.log(p) //1;
console.log(q) //2;
而不是
const salary = personnel.salary
const sex = personnel.sex
const age = personnel.age
只是
const {salary, age, sex} = personnel
相关文章:
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- angular 1.5应用程序中的导航栏
- React中的数据集表示
- 无法从jquery Mobile导航栏重定向到另一个页面
- 引导程序:在导航栏中,显示悬停在单个位置的基于Li Link的不同内容
- 导航到特定事件的另一个变量页面
- MVC 3页面导航和使用javascript传递参数
- 如何在react js中从一个页面导航到另一个页面
- 导航栏没有调整到浏览器屏幕的大小
- 显示放大镜弹出窗口时隐藏导航内容
- DataTable按下键选择扩展/导航
- 正在检测导航到<a name=“;最新主题”></a>
- 带有url的单页网站导航
- 父页面的角度路由器导航高亮显示
- 如何正确编程jQuery动画与平滑(导航栏)
- 动态更改'汉堡包'导航取决于BG图像
- 使用导航属性创建Kendo UI网格模型的问题
- Flexslider导航按钮在悬停时不可见,带有橙色框
- 离开页面导航后保留文本区域内容
- 分配左侧的 Javascript 对象括号表示法 ({ 导航 } =)