首页 > 解决方案 > SyntaxError: missing ) 在编译 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%>

标签: javascriptejsbackendweb-deploymentweb-development-server

解决方案


您的代码有两个问题。第一个是您必须使用括号和引号作为文件名。哺乳动物.ejs 的修复版本应如下所示:

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

<h1>Hello</h1>

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

可能存在的另一个问题是您包含的文件也应该具有.ejb扩展名。因此,请确保您已命名您的文件partials/header.ejbpartials/footer.ejb.

希望这可以帮助。

仅供参考,我尝试使用以下代码进行渲染:

const ejs = require("ejs");

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

推荐阅读