亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javascript - react 組件中的虛擬DOM 操作

瀏覽:83日期:2023-09-07 13:11:38

問題描述

闡述: 本人是 reactJS 的初學者 ;需求如下: 1、react 組件 aa.jsx

var React = require(’react’); var aaa = React.createClass({render: function(){ return (<p ref='username' className='comment2'> aaaaaaaaa</p> );} }); module.exports = aaa;

2、react 組件 bb.jsx

var React = require(’react’); var aaa = React.createClass({render: function(){ return (<p ref='username' className='comment3'> bbbbbbbbbbbbbbb</p> );} }); module.exports = bbb;

3、react 主入口 main.jsx 需要 根據 一個 json 文件來加載 所需的組件

json ={ 'data' : [{ 'page' : 'aa'},{ 'page' : 'bb'},{ 'page' : 'cc'} ]} 在主函數這里 我用了一個for 循環 for (var i=0 ; i< data.length ; i++){var page = require(’./components/’+ data[i][’page’] +’.jsx’); }

但是問題來, 在這里的page 都是 一個個的 函數。 怎樣 將其中的 dom 塊(p 元素) 取出來 一個個有序的 添加到 index.html 頁面上的 某個指定的 dom元素中去 。

問題解答

回答1:

首先我不明白的是,你的 aa.jsx 和 bb.jsx 既然那么像,為什么還寫兩個(當然也可能是你為了方便寫例子)。既然是多個不同的文件,它就是不同的 React 組件,如果只是想把它們都渲染在某個 DOM 下,直接把它們放到一個數組就好。

下面的代碼我沒有測試,但應該是能用的

const components = [];for (var i=0 ; i< data.length ; i++){ var Page = require(’./components/’+ data[i][’page’] +’.jsx’); components.push(<Page />);}

在要嵌入的地方,JSX 代碼

<FatherComponent> {components}</FatherComponent>

如果是要隨時更新它,重新渲染就行了,可以用 this.state.components

你可以來看看我們翻譯的 React 文檔

回答2:

這跟虛擬dom沒關系,雖然我不知道你為什么這樣用~但你這樣用法就是錯的!

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产精品人成 | 国产成人精品区在线观看 | 特级中国aaa毛片 | 中文字幕色婷婷在线视频 | 黄色骚片| 亚洲高清国产品国语在线观看 | 国产一二三四区在线观看 | 欧美大陆日韩一区二区三区 | 国产综合久久一区二区三区 | 亚洲精品高清国产一线久久97 | 久久久精品久久视频只有精品 | 天天更新天天久久久更新影院 | 久久精品国产精品国产精品污 | 日本96在线精品视频免费观看 | 国产伦精品一区二区三区视频小说 | 人人九九精 | 国产黄在线播放免费观看 | 精品福利视频在线观看 | 玖玖玖视频在线观看视频6 玖玖视频精品 | 欧美成人免费一级人片 | 三级黄色片在线观看 | 国产精品不卡在线观看 | 欧美深夜福利视频 | 国产在线观看高清精品 | 国产日韩不卡免费精品视频 | 三级全黄在线观看www桃花 | 91网站桃色 | 一级黄色录像在线观看 | 美日毛片 | 操婷婷 | 午夜黄 | 免费大黄网站在线看 | 日本精品久久久一区二区三区 | 97色伦色在线综合视频 | 最新更新国内自拍视频 | 日本二级黄色片 | 日韩精品第一区 | 国产露脸对白91精品 | 三级黄色毛片网站 | 成人精品视频在线观看播放 | 在线观看亚洲精品国产 |