SyntaxError: отсутствует) после списка аргументов при компиляции ejs

Файл header.ejs содержит:

<html>
    <head>
        <title>
            Random Ejs testing
        </title>
        <link rel="stylesheet" href="/app.css">
    </head>
    <body>

и файл нижнего колонтитула содержит:


           <p> Made By Shashank Singh </p>
    </body>
</html>

Я пытаюсь включить эти шаблоны в свой файл Млекопитающее.ejs, но получаю сообщение об ошибке: Mammal.ejs:

<%- include partials/header%>

<h1>Hello</h1>

<%- include partials/footer%>


person shashank singh    schedule 04.01.2020    source источник


Ответы (2)


Есть две проблемы с вашим кодом. Во-первых, вы должны использовать скобки и кавычки для имени файла. Версия с исправлениями для Млекопитающее.ejs должна выглядеть следующим образом:

<%- include('partials/header')%>

<h1>Hello</h1>

<%- include('partials/footer')%>

Другая проблема может заключаться в том, что файлы, которые вы включаете, также должны иметь расширение .ejb. Поэтому убедитесь, что вы назвали свои файлы partials/header.ejb и partials/footer.ejb.

Надеюсь это поможет.

К вашему сведению, я попытался выполнить рендеринг с помощью этого кода:

const ejs = require("ejs");

ejs.renderFile("mammal.ejs", null, {}, function(err, str){
    console.log("ERR", err);
    console.log("RESULT", str);
});
person vincent    schedule 04.01.2020

вы должны попробовать следующее предложение. Это работает для меня и должно работать для вас.

` ‹%- include('./partials/header.ejs');%>

‹%- include('./partials/footer.ejs');%> `

person Community    schedule 10.03.2020
comment
может быть, вы можете объяснить лучше, не только говорите, что работаете на меня и должны работать на вас, вы не должны лениться, когда отвечаете - person Emiliano; 18.03.2020