在下面的代码中,当Toggle ParentA/B单击按钮时,<Child />组件将被卸载并再次重新安装,但实际上只有Parent组件发生了变化。
Child在这种情况下如何防止卸载和重新安装?
import React, { useState } from "react"
const App = () => {
const [a, setA] = useState(true)
return (
<div>
<button onClick={() => setA(!a)}>Toggle ParentA/B</button>
{a ? <ParentA><Child /></ParentA> : <ParentB><Child /></ParentB>}
</div>
)
}
const ParentA = ({ children }) => <div>parentA{children}</div>
const ParentB = ({ children }) => <div>parentB{children}</div>
class Child extends React.Component {
componentDidMount() {
console.log('child did mount')
}
componentWillUnmount() {
console.log('child will unmount') …Run Code Online (Sandbox Code Playgroud) 如何默认导出多个导入的模块?
我可以执行类似下面代码的操作,但如果我要导入多个文件,样板文件可能会快速增长。有没有一种速记方法可以实现这一目标?
import Foo from './Foo'
import Bar from './Bar'
//...
export default {
Foo,
Bar
//...
}
Run Code Online (Sandbox Code Playgroud)
请注意,在上面的代码中,我没有导出多个值。我正在导入多个值,累积它们,然后将它们导出为单个对象。我打算通过Baz.Fooor引用重新导出的值Baz.Bar,假设上面的代码是Baz.js。
传统上,DNS 服务器的目的是将人性化的主机名转换为 IP 地址。更重要的是,它允许更新服务在网络上的位置(IP 地址),同时保留相同的主机名。
然而,在 EC2 中,公共 DNS 主机名链接到其公共 IP 地址。例如,如果实例的 IP 地址为1.2.3.4,则其 DNS 名称将为ec2-1-2-3-4.compute-1.amazonaws.com。
由于 DNS 名称在语法上与其 IP 相关联,因此它不会用作令人难忘的 URL,也不允许 IP 独立于其 DNS 名称进行更改。
AWS 提供 DNS 名称的原因可能是什么?DNS 名称在 EC2 上下文中有何用途?我可以使用公共 DNS 主机名完成哪些我无法使用公共 IPv4 地址的任务?