javascript - React 的新手问题,如何在不同页面灵活插入react组件?
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-19 10:40:40
[JavaScript讨论组]

    
    



    

插件加载错误

//▲看上面,这里有一个我写好的组件▲。 //▼看下面,这里有一个插入方法▼ //下面代码原来在上边这文件里,剪切出来就不能正常插入到页面了 //这样做是因为我试图在不同的页面底部的`script`标签中插入组件 //以方便在不同的页面给组件传入不同的`props`值1 //■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

●背景交代完毕:插入组件失败了,我考虑可能是ReactDOM.render这段代码被打在包里能用,脱离包就不能用了,也理所当然。(怀疑我的组件名都属于这个包里的局部变量的原因)
●疑问是:其于以上的失败,那么如何将同一个组件的不用显示形态插入到不同页面中?
●详述一下:我写了一个侧边广告。这个广告接收到不同的props来显示不同的广告内容。
然后插入到不同页面的

中。即

A 页面
B 页面
C 页面

如果不能分别写在每个页面底部的script中那么,就只能在外部的.js文件中插入组件。
我现在这样做的:判断同一个容器的name值,不同的name值插入不同的props数据。代码如下
请问有什么更好的办法吗?

谢谢您的浏览、和解答,谢谢你。老司机一生平安。谢谢!

var ad = document.getElementById('Ad');
if(ad.name=="apple"){
    ReactDOM.render(
        ,
        document.getElementById('Ad'),
    )
}else if(ad.name=="banana"){
    ReactDOM.render(
        ,
        document.getElementById('Ad'),
    )
}else if.....
曾经蜡笔没有小新
曾经蜡笔没有小新

全部回复(1)
曾经蜡笔没有小新

webpack打包后的文件你访问不到里面的组件名了

  1. 你可以用全局变量,将组件名放到window 上

  2. 你下面的例子,用的挺好的啊,可以简化下,判断ad.name将data放到一个变量里,统一传入data这个prop就简单点

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号