销毁很酷,但是在销毁嵌套对象时我开始遇到严重的问题。我有以下代码:
const {
credit: { amont },
} = userProfile
Run Code Online (Sandbox Code Playgroud)
这很危险,因为如果信用为空怎么办?整个应用中断了。我该如何预防?我知道一种方法是使用Typescript,但我宁愿不这样做。我开始怀疑对嵌套的破坏与使用点没有什么区别。
我正在使用 react router v4,在重新加载页面(不是 window.location.reload)时遇到了一些问题。我最好给出一个真实的用例来解释这个问题,我们以一个社交网络应用程序为例:
this.props.history.push('/job/' + id')
,它起作用了,因此用户 B 转到了job/123
页面。job/123
页面上,他点击了通知链接并触发了this.props.history.push('/job' + id')
。但是他不会看到页面重新呈现,他也没有看到最新的评论,因为该页面什么都不做。我有一个用户个人资料,我有一个“收入”字段,它在架构中看起来像这样
收入:{ type: Schema.Types.ObjectId, ref: 'Earning' }
创建新用户时如何为收入字段设置默认值?我不能这样做
earning: {
type: Schema.Types.ObjectId,
ref: 'Earning',
default: 0
}
Run Code Online (Sandbox Code Playgroud)
我在路径“earning”处收到值“0”的 Cast to ObjectId failed 错误
我想滚动到列表的最后一项,如果没有新组件,则可以毫无问题地实现它。
这是工作代码 https://codesandbox.io/s/zn12r4p9ym
export default class App extends React.Component {
componentDidMount() {
this.lastNode && this.lastNode.scrollIntoView(false);
}
render() {
return (
<div className="App">
<div style={{ height: "70px", overflow: "auto" }}>
<p>1</p>
<p>2</p>
<p>3</p>
<p>4</p>
<p>5</p>
<p ref={el => (this.lastNode = el)}>6</p>
</div>
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我的列表在新文件中怎么办?像<List />
,我如何获得推荐<List />
?