我正在尝试在我的Express App中使用这个谷歌地图代码,但它给了我一个syntaxError。我已经将错误过滤到了这个函数:
<% var map; %>
<% function initMap() { %>
<% map = new google.maps.Map(document.getElementById('map'), { %>
<% center: {lat: -34.397, lng: 150.644}, %>
<% zoom: 8 %>
<% }); %>
<% }; %>
错误消息并没有太大帮助:
SyntaxError: Unexpected token ; in C:\proyectos\google-location-api\views\resultados.ejs while compiling ejs
If the above error is not helpful, you may want to try EJS-Lint:
https://github.com/RyanZim/EJS-Lint
at Object.compile (C:\proyectos\google-location-api\node_modules\ejs\lib\ejs.js:524:12)
at Object.compile (C:\proyectos\google-location-api\node_modules\ejs\lib\ejs.js:338:16)
at handleCache (C:\proyectos\google-location-api\node_modules\ejs\lib\ejs.js:181:18)
at tryHandleCache (C:\proyectos\google-location-api\node_modules\ejs\lib\ejs.js:203:14)
at View.exports.renderFile [as engine] (C:\proyectos\google-location-api\node_modules\ejs\lib\ejs.js:412:10)
at View.render (C:\proyectos\google-location-api\node_modules\express\lib\view.js:128:8)
at tryRender (C:\proyectos\google-location-api\node_modules\express\lib\application.js:640:10)
at EventEmitter.render (C:\proyectos\google-location-api\node_modules\express\lib\application.js:592:3)
at ServerResponse.render (C:\proyectos\google-location-api\node_modules\express\lib\response.js:971:7)
at Request._callback (C:\proyectos\google-location-api\app.js:20:11)
有什么想法吗?
答案 0 :(得分:2)
我猜这是因为你在每一行都有<%
和%>
,并建议让它更清洁,以便正确解析它
<%
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {
lat: -34.397,
lng: 150.644
},
zoom: 8
});
};
%>
答案 1 :(得分:0)
删除%%标记之前和<%标记之后的空格。 请参阅https://github.com/mde/ejs/issues/334
<%var map;%>
<%function initMap(){%>
<%map = new google.maps.Map(document.getElementById('map'), {%>
<%center: {lat: -34.397, lng: 150.644},%>
<%zoom:8%>
<%});%>
<%};%>```