gpt4 book ai didi

javascript - Javascript中的三点运算符是什么意思

转载 作者:数据小太阳 更新时间:2023-10-29 03:48:30 31 4
gpt4 key购买 nike

我看到rubix代码

http://wrapbootstrap.com/preview/WB09498FH (网站右上演示点击)

是react组件中的代码

javascript

//react ES6
var InboxItem = React.createClass({
mixins: [State, Navigation],
statics: {
ID: 0,
resetID: function() {
InboxItem.ID = 0;
},
getID: function() {
return ++InboxItem.ID;
}
},
handleClick: function(e) {
e.preventDefault();
e.stopPropagation();
this.transitionTo('/app/mailbox/mail');
},
render: function() {
var classes = classNames({
'inbox-item': true,
'unread': this.props.unread
});

var props = {
href: '/app/mailbox/mail',
onClick: this.handleClick,
...this.props,
className: classes
};

return (
<a {...props}>
<div className='inbox-avatar'>
<img src={this.props.src} width='40' height='40' className={this.props.imgClass + ' hidden-xs'} />
<div className='inbox-avatar-name'>
<div className='fg-darkgrayishblue75'>{this.props.name}</div>
<div><small><Badge className={this.props.labelClass} style={{marginRight: 5, display: this.props.labelValue ? 'inline':'none'}}>{this.props.labelValue}</Badge><span>{this.props.description}</span></small></div>
</div>
<div className='inbox-date hidden-sm hidden-xs fg-darkgray40 text-right'>
<div style={{position: 'relative', top: 5}}>{this.props.date}</div>
<div style={{position: 'relative', top: -5}}><small>#{InboxItem.getID()}</small></div>
</div>
</div>
</a>
);
}
});

onClick下一行代码

...this.props

返回下一行代码

一个{... Prop }

这个“...”是什么?

最佳答案

正如@zerkms 在 comments 中提到的那样;它是 ECMAScript 2016 (ES7) Proposal 中的 Object Rest/Spread Properties 语法,也在 React docs 中提到.

你看到的代码

var props = {
href: '/app/mailbox/mail',
onClick: this.handleClick,

...this.props,

className: classes
};

被评估为以下内容,其中 props 对象属性被扩展到新的 props 对象上:

var props = {
href: '/app/mailbox/mail',
onClick: this.handleClick,

src: 'https://example.com',
name: 'myName',
labelClass: 'myLabelClass',
labelValue: 'mylabelValue',

className: classes
};

关于javascript - Javascript中的三点运算符是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33092646/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com