【问题标题】:Reference Error variable is not defined with ejs and nodejs参考错误变量未使用 ejs 和 nodejs 定义
【发布时间】:2022-02-08 15:26:56
【问题描述】:

我正在尝试使用 ejs 将变量从 nodejs(expressjs) 发送到 html 页面。但我得到 ReferenceError: ...... variable is not defined 错误。

文件夹结构:

  • 节点模块

  • src

  • 静态页面服务器

    • static-pages-server.js
  • 观看次数

    • 页面

      • 旅程分析报告.ejs
    • 部分

旅程分析报告.ejs:

<script type="text/javascript">
        console.log('<%-currentCulture%>');
</script>

静态页面服务器.js:

   const express = require('express');
    const app = express();
    const bodyParser = require('body-parser');
    const ejs = require('ejs');
    var path = require('path');
    var currentCulture;
    
    app.get('/', function(req, res) {
    res.render("pages/journey-analize-report", {currentCulture:"Hello"});
});

错误:

 ReferenceError: D:\Project-UI\views\pages\journey-analize-report.ejs:46
            44|     <script type="text/javascript">
            45|         
         >> 46|         console.log('<%-currentCulture%>');
            47|   
        
        currentCulture is not defined
            at eval (eval at compile (D:\SeyirMobilNG-UI\node_modules\ejs\lib\ejs.js:662:12), <anonymous>:12:16)
            at journey-analize-report (D:\SeyirMobilNG-UI\node_modules\ejs\lib\ejs.js:692:17)
            at tryHandleCache (D:\SeyirMobilNG-UI\node_modules\ejs\lib\ejs.js:272:36)
            at View.exports.renderFile [as engine] (D:\SeyirMobilNG-UI\node_modules\ejs\lib\ejs.js:489:10)
            at View.render (D:\SeyirMobilNG-UI\node_modules\express\lib\view.js:135:8)
            at tryRender (D:\SeyirMobilNG-UI\node_modules\express\lib\application.js:640:10)
            at Function.render (D:\SeyirMobilNG-UI\node_modules\express\lib\application.js:592:3)
            at ServerResponse.render (D:\SeyirMobilNG-UI\node_modules\express\lib\response.js:1012:7)
            at D:\SeyirMobilNG-UI\static-page-server\static-pages-server.js:41:9
            at Layer.handle [as handle_request] (D:\SeyirMobilNG-UI\node_modules\express\lib\router\layer.js:95:5)

【问题讨论】:

    标签: javascript node.js express ejs


    【解决方案1】:

    我认为你应该使用这种语法

    <%= currentCulture %>
    

    但是你用过

    <%-currentCulture%>
    

    【讨论】:

    • 我仍然遇到同样的错误 =/
    • 也许您需要为 currentCulture 设置一个值,是真的吗?
    • 我在另一个函数中设置了值。同样在您发表评论后,我尝试发送内联值,但没有成功。我在我的问题中编辑了 js 文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多