将通用组件或组件作为属性进行反应

时间:2018-03-13 06:24:36

标签: javascript reactjs components

您好我正在尝试使用一个可以切换类的通用“组件”,将其视为制表符,但我不想在其上添加固定标记,所以我想使用属性来管理初始化。

例如,此代码应初始化,单击它将切换.target上的.active类。

<button data-toggle=".active" data-target=".target">button</button>
<div class="target"></div>

问题是我需要使用componentDidMount()和componentDidUpdate()初始化数据属性,但我不能在所有组件上指定它,是否可以为所有应用程序设置全局componentDidMount()?或者是否可以使用属性分配“通用组件”?什么是最好的方法?

我想使用属性,因为我需要保持它的通用性,我不想用等等设置组件。

修改

我正在考虑在主组件应用程序上使用componentDidMount和componentDidUpdate,因为这些方法似乎在所有chidrens完成安装或更新后触发,也许我可以查询属性..更多内容

EDIT2

嗯,我认为正确的解决方案是使用react组件并在其中初始化组件内导入的vanilla js类,它应该工作我不知道为什么我之前没有考虑过

1 个答案:

答案 0 :(得分:1)

您不应该使用atrributes,而是创建一个可以包装其他组件的组件 - 通过这个组件,您可以将其作为对组件生命周期方法的prop访问权传递。

因此,您可以将目标和className传递给gerneric处理程序组件以进行活动。它将完成工作,内部组件将是UI。这是与属性的反应方式。