我在我的React项目的组件中使用simplemaps。我在index.html中添加了这两个脚本
<script type="text/javascript" src="map/mapdata.js"></script>
<script type="text/javascript" src="map/countrymap.js"></script>
这些脚本将地图加载到以下div中的我的React组件之一中
<div id="map"></div>
由于某种原因,仅当id为“ map”的div位于DOM中以进行初始应用安装时,才会加载此地图。在切换路由时(即,在DOM中不存在具有id =“ map”的这个div)并返回相同的组件(即在DOM中再次存在具有id =“ map”的该div)时,我无法除非重新加载整个应用程序,否则请参见此地图。
答案 0 :(得分:0)
在js代码中
<script>
//code when switched
if(switched){
require('./map/mapdata.js');
} else {
require('./map/another.js'); }
</script>
这样的用法会起作用
答案 1 :(得分:0)
好吧,您可以创建一个脚本元素并将其附加到componentDidMount上的正文中。如果要确保只加载一次,还可以添加一个ID并检查该ID是否存在。