当前位置: 首页 > 知识库问答 >
问题:

意外的标记“;” 编译ejs时

南宫建白
2023-03-14

我目前正在使用SQLite开发一个web应用程序。 这里,我想根据数据库中注册的类型显示几个数据。 因此,我想使用case语句。 但是这一个在调用它时在我的视图中提供了这个错误。

另外,我尝试在没有case语句的情况下显示它,并且显示得非常好。

SyntaxError: Unexpected token ';' in C:\Users\tu\Documents\SVAV3.1\views\show_config.ejs while compiling ejs

If the above error is not helpful, you may want to try EJS-Lint:
https://github.com/RyanZim/EJS-Lint
Or, if you meant to create an async function, pass async: true as an option.
    at new Function (<anonymous>)
    at Template.compile (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\ejs\lib\ejs.js:633:12)
    at Object.compile (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\ejs\lib\ejs.js:392:16)
    at handleCache (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\ejs\lib\ejs.js:215:18)
    at tryHandleCache (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\ejs\lib\ejs.js:254:16)
    at View.exports.renderFile [as engine] (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\ejs\lib\ejs.js:485:10)
    at View.render (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\express\lib\view.js:135:8)
    at tryRender (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\express\lib\application.js:640:10)
    at Function.render (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\express\lib\application.js:592:3)
    at ServerResponse.render (C:\Users\tung\Documents\SmartVacAppV3.1\node_modules\express\lib\response.js:1008:7)

下面是我的视图代码:

<%- include("layouts/_header") %>
<div class = "container" style="padding-top: 50px">

<div class="row">
    <form class="col-12" action="/create_config" method="POST">

        <% categories.forEach((category) => {%>
        <div class="card mb-4">
            <div class="card-header"> <%= category.name_var_category %> </div>
            <% data.forEach((values) => {%>
                <% if (values.id_variable_category === category.id) {%>  
                    <% switch(values.name_variable_types) {%>
                        <% case 'Hexadecimal': %>
                            <div class="form-group col-md-4">
                                <label for="<%= values.name_variable %>"><%= values.name_variable %></label>
                                <input type="text" class="form-control" name="<%=  values.name_variable %>" value="<%= values.value_variable %>">
                            </div>
                            <% break; %>
            
                        <% case 'Boolean': %>
                            <div class="form-group col-md-4">
                                <label for="<%=  values.name_variable %>"><%= values.name_variable %></label>
                                <select class="form-control" name="<%=  values.name_variable %>" id="<%=  values.name_variable %>">
                                    <option value="<%= values.value_variable %>"><%= values.value_variable %></option>
                                    <% if(values.value_variable === "ON") {%>
                                        <option value="<%= 'OFF' %>">OFF</option>
                                    <% }else {%>
                                        <option value="<%= 'ON' %>">ON</option>
                                    <% } %>
                                </select>
                            </div>
                            <% break; %>
            
                        <% case 'Integer': %>
                            <div class="form-group col-md-4">
                                <label for="<%=  values.name_variable %>"><%= values.name_variable %></label>
                                <input type="number" class="form-control"  name="<%=  values.name_variable %>" value="<%= values.value_variable %>" min="<%= values.start_range_variable %>" max="<%= values.end_range_variable %>" step="<%= values.step_variable %>" >
                            </div>
                            <% break; %>
            
                        <% case 'Float': %>
                            <div class="form-group col-md-4">
                                <label for="<%=  values.name_variable %>"><%= values.name_variable %></label>
                                <input type="number" class="form-control"  name="<%=  values.name_variable %>" value="<%= values.value_variable %>" min="<%= values.start_range_variable %>" max="<%= values.end_range_variable %>" step="<%= values.step_variable %>" >
                            </div>
                            <% break; %>
            
                        <% default: %>
                        <div class="alert alert-success">
                            <p>A value had no variable type</p>
                        </div>
                    <% } %>
                <% } %>
            <% }) %>
        </div>   
        <% }) %>

        <div class="form-group row">
            <div class="col-sm-10 pt-3">
                <button type="submit" class="btn btn-primary">Géréner Fichier Config</button>
            </div>
        </div>
    </form>
</div>
</div>
<%- include("layouts/_footer") %>

共有1个答案

伯茂才
2023-03-14

问题是如何使用switchcase-似乎ejs希望cases保留在switch-ejs表达式中。 尝试如下所示:

  <% switch(values.name_variable_types) {
        case 'Hexadecimal': %>
            <div class="form-group col-md-4">
              <label for="<%= values.name_variable %>"></label>
              <input type="text" class="form-control" name="<%=  values.name_variable %>" value="<%= values.value_variable %>">
            </div>
        <% break;
        case 'Boolean': %>
        ...
 类似资料:
  • 我的ejs文件路径不工作。 SyntaxError:编译ejs时,C:\users\mikda\desktop\coltfull\section33\yelpcamp\v3\views\landing.ejs中出现意外的内标识“/” 如果上述错误没有帮助,您可能希望尝试ejs-lint:https://github.com/ryanzim/ejs-lint,或者,如果您打算创建一个异步函数,则将作

  • 你好,我尝试在其他问题中搜索,但没有一个提到的解决方案,我尝试对我不起作用。 使用命令时: npm启动 我有一个错误: /src/index.js模块生成失败(来自./node_modules/babel-loader/lib/index.js):语法错误:d:/kodilla/projekty/webpack-to-do-app/src/index.js:意外>令牌(6:4) package.j

  • 我在测试机智。ai与fb提供的样品,我运行在以下错误。。。 我对节点和机智很陌生。我使用了初始化并安装节点wit模块。能找个人帮忙吗?

  • 问题出现在(bot)中。这部分代码:

  • 我将错误作为意外标记:(在查询下面,但同样的查询在SQL中运行良好) 我希望有人能帮我。

  • 我的代码 错误 im 获取是意外的标记(使用“;”在同一行上分隔表达式)

  • 问题内容: 在各种多线程C和C ++项目中,我已经看到该标志同时应用于编译和链接阶段,而其他人则根本不使用它,而只是转到链接阶段。 有没有编译和链接标志的危险,即实际上是做什么的?我主要对Linux平台感兴趣。 问题答案: 尝试: 并查找以。开头的任何内容。 在我的计算机上,这导致文件使用进行编译并与链接。在其他平台上,这可能有所不同。使用于大多数便携性。 在GNU libc上使用,可以更改某些l

  • 我正在尝试让Lambda函数访问API并返回JSON。 http://api.openweathermap.org/data/2.5/weather?id=2172797 P. S此API ID是OW提供的演示ID。 有人能看到问题吗? 我希望lambda获得json并返回它,因此任何查看我的API url的人都会看到Open Weather API的结果