首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel & React,动态渲染

Laravel & React,动态渲染
EN

Stack Overflow用户
提问于 2021-06-28 19:54:54
回答 1查看 32关注 0票数 1

我最近开始使用React,并将其与Laravel结合使用,因为我希望通过一步一步的迁移将我的jquery替换为react。

在我的测试中,渲染指令总是打包在组件.js文件中,如下所示:

ReactDOM.render(<Calculator />, document.getElementById('tutorial'));

并且div <div id="tutorial"></div>被放置在视图中。

我的问题是视图是由我的php代码动态生成的,有时我需要在一个页面中呈现几个组件,所以这种方法不起作用。因此,我想从视图中触发渲染,如下所示:

<div id="tutorial" intruction_to_render_calculator_component_in_this_div></div>

我该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2021-08-05 16:55:45

最近一直在努力寻找解决方案……所以这是我找到的一个:

在我的组件中,我使用一个循环来筛选所有请求基于rComponent属性挂载的元素:

代码语言:javascript
复制
var divs = document.querySelectorAll("[rComponent='Calculator']");
if (divs.length > 0) {
  //document.querySelector("[rComponent='calculator']");
  for (var i = 0; i < divs.length; ++i) {
    ReactDOM.render(<Calculator />, divs[i]);
  }

  //ReactDOM.render(<Calculator />, document.getElementById('tutorial2'));
}

在我看来,我只需要在我的div中放一个rComponent:

代码语言:javascript
复制
<div id="tutorial" rComponent="Calculator"></div>
<div id="tutorial2" rComponent="Calculator"></div>

我对这种工作方式非常满意,尽管我认为这可能会减慢脚本的执行速度

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

https://stackoverflow.com/questions/68162927

复制
相关文章

相似问题

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