在对象分配解构中使用冒号 Javascript

Use of Colon in object assignment destructuring Javascript

使用 React.js 和 React Router

import React, { Component } from 'react';

const PrivateRoute = ({ component: Component, ...rest }) => (
  <Route {...rest} render={} />
)

*{ component: Component, ...rest }*

..rest 是扩展语法的使用,但是 *component: Component* 做什么

在 ES6 中,这会将值分配给一个名为 foo

的新变量

let obj = {
  name: 'Some Name',
  age: '42',
  gender: 'coder'
};
let { name: foo, ...rest } = obj;
console.log({foo, rest}) // { foo: 'Some Name', rest: { age: 42, gender: 'coder' } }
//

在这种情况下,name不会被定义

assigning to new variable names