字符串导致WebWorker,我使用ReactDOMServer.renderToString阵营+ WebWorkers,渲染ReactDOMServer.renderToString
然后我那个字串传递回主UI线程与此:
lines = lines.map(function(line){
return ReactDOMServer.renderToString(ContactItem({line: line}));
});
postMessage({
testResult: 'pass',
testLines: lines
});
但回到主UI线程,我不知道如何实际呈现该字符串...我需要使用React.dangerouslySetInnerHTML
还是有更好的方法吗?
从WebWorker消息字符串结果看起来是这样的课程:
MessageEvent bubbles: false
cancelBubble: false
cancelable: false
currentTarget: Worker
data: Object
name: "chuckles"
testLines: Array[25]
0: "<li class="Contact" data-reactid=".252oied3u2o" data-react-checksum="1411403885"><h2 class="Contact-name" data-reactid=".252oied3u2o.0">>[test] foo✔</h2></li>"
1: "<li class="Contact" data-reactid=".29kk5vm2sqo" data-react-checksum="2115195156"><h2 class="Contact-name" data-reactid=".29kk5vm2sqo.0">>[test] bar✔</h2></li>"
2: "<li class="Contact" data-reactid=".bg6xmnuqdc" data-react-checksum="1668960606"><h2 class="Contact-name" data-reactid=".bg6xmnuqdc.0">>[test] baz✔</h2></li>"
3: "<li class="Contact" data-reactid=".1t3vx6pj4sg" data-react-checksum="2019185929"><h2 class="Contact-name" data-reactid=".1t3vx6pj4sg.0">>p[test] makes stuff 5✔</h2></li>"
4: "<li class="Contact" data-reactid=".cebbpdy8e8" data-react-checksum="818500766"><h2 class="Contact-name" data-reactid=".cebbpdy8e8.0">>p[test] makes stuff 6✔</h2></li>"
5: "<li class="Contact" data-reactid=".1bu0bdc3f9c" data-react-checksum="1304319087"><h2 class="Contact-name" data-reactid=".1bu0bdc3f9c.0">>p[test] makes stuff 7✔</h2></li>"
...
25: "<li class="Contact" data-reactid=".1bu6jdc3f9c" data-react-checksum="1404319082"><h2 class="Contact-name" data-reactid=".1bu0bdc3f9c.0">>p[test] makes stuff 25✔</h2></li>"