Javascript 在功能组件之外声明变量

Javascript 在功能组件之外声明变量,javascript,reactjs,Javascript,Reactjs,在功能组件之外声明变量是否可以,例如: const outsideVariable = new Map([['key', 'value']]) const ComponentName = props => ( <div> Some Text </div> ) export default ComponentName const outsideVariable=新映射([['key','value']] const ComponentName=pr

在功能组件之外声明变量是否可以,例如:

const outsideVariable = new Map([['key', 'value']])
const ComponentName = props => (
  <div>
    Some Text
  </div>
)

export default ComponentName
const outsideVariable=新映射([['key','value']]
const ComponentName=props=>(
一些文本
)
导出默认组件名

当然-只要你不变异它。因为当你改变它时,你的组件是有状态的,不再起作用。

我坚决不想在它被创建后改变它。它们被称为功能组件,因为它们是通过定义function@IsaacCWay正确的。但如果他们不打算同时表达这两种意思,react的创造者们真的把他们的术语弄乱了。他们仍然强调渲染功能应该是纯粹的。在React的上下文中,功能组件只是一个功能组件。一个组件是否具有功能与它是否纯粹无关,如果你想声称React开发人员出于某种原因将它们命名为功能组件,而不是因为它们实际上是一个函数,那么你肯定需要一个源代码。React是一个库,而不是一个框架,它对如何使用它没有任何意见。@IsaacCWay查看React主页,似乎官方术语实际上是“功能组件”。(也许他们改变这一点是为了消除歧义?我不知道。)以及:“在功能组件的主体内部(称为React的渲染阶段)不允许有副作用。[……]当他们使用这个术语时,将[
useEffect
]想象为从React的纯功能世界到命令世界的逃生舱。”“功能性”,指FP。