通过um的iHTML 模板,新建 src/pages/document.ejs
,umi 约定如果这个文件存在,会作为默认模板。比如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<title>人才招聘</title>
<script type="text/javascript"
src="https://webapi.amap.com/maps?v=2.0&key=你的key"></script>
</head>
<body>
<noscript>Sorry, we need js to run correctly!</noscript>
<div id="root"></div>
</body>
</html>
在你的umi项目中找到.umirc.ts文件,在里面配置:
externals: { 'AMap': 'window.AMap' }
然后需要的页面创建一个div,并且设置它的宽高
<div id="container"></div>
#container {
width: 100%;
height: 100%;
}
然后在useEffect中写一下代码:
var map = new AMap.Map('container', {
resizeEnable: true, //是否监控地图容器尺寸变化
zoom:11, //初始化地图层级
center: [116.397428, 39.90923] //初始化地图中心点
});