SyntaxError:意外的令牌;在编译ejs时

时间:2017-06-29 02:09:10

标签: node.js express ejs

我正在尝试在我的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)

有什么想法吗?

2 个答案:

答案 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%>
  <%});%>
  <%};%>```