首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React原生外包函数

React原生外包函数
EN

Stack Overflow用户
提问于 2019-01-07 21:49:37
回答 1查看 183关注 0票数 1

考虑以下情况,我有一个可重用的组件,让我们称它为myComponentmyComponent被使用了两次,它还有一个名为whenAccepted的道具,在我使用该组件的两个地方,我都运行相同的函数。我想把它外包到一个新文件中,这样我就可以导入并运行它,而不是编写两次。对此有什么建议吗?我在考虑HOC的,但我不确定它是否可以工作,因为我需要更多的东西,因为运行它的函数还需要一些数据存在于我使用它的两个文件中。你将如何处理这些反应堆?

EN

回答 1

Stack Overflow用户

发布于 2019-01-07 22:12:51

如果我没理解错的话,通过“我运行相同的函数,我想把它外包到一个新的文件中”,你想提取一个要在多个组件中使用的函数。下面是我如何做到这一点的。

简化的项目结构:

代码语言:javascript
复制
./mySharedFunction.js
./MyComponent.js
./MyComponent2.js

创建在多个组件中使用的函数

代码语言:javascript
复制
// mySharedFunction.js

export default const mySharedFunction = (data) => {
 ...do stuff...
}

导入函数并在构造函数中使用它。

代码语言:javascript
复制
// MyComponent.js

import mySharedFunction from './mySharedFunction.js

export default class MyComponent extends Component {

  constructor(props) {
    super(props)
    mySharedFunction(data)
  }

  ...some code...

  render() {
    ...
  }
}

导入函数并在类方法中使用它。

代码语言:javascript
复制
// MyComponent2.js

import mySharedFunction from './mySharedFunction.js

export default class MyComponent2 extends Component {

  ...some code...

  classMethod = (data) => {
    mySharedFunction(data)
  }

  render() {
    ...
  }
}

希望这能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54075675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档