javascript - Index.html 到 EJS 文件错误

标签 javascript jquery html node.js

我是开发人员的初学者,所以,如果我做错了一些事情,我很抱歉,请告诉我如何解决......

我在.html文件中创建了一些函数,只是为了测试,并且工作很好。 但是,我看到了 EJS 模块的示例,为了安全起见,我可以尝试使用它们。 并且,我使用所有代码 .html 文件创建其他存档 .ejs ,但是,工作不正常,控制台中的错误是:

enter image description here

我的代码使用 jQuery/public 内的一些文件 .js 粘贴在这些控制台错误中显示

我的旧 html 文件:

<html>
<head>
  <script src="jquery-3.1.1.js"></script>
  <script src="app.js"></script>
  <base href="/">
  <title>XXXXXXXXXXXXXXXX</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta ------ />
  <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
  <link rel="stylesheet" href="css/app.css">
</head>
<body>
  <div id="view-change-button" class="button" onclick="Payloadxxxxxxx.togglePanel(event, this)">
    <img class="option full" src="../img/Chat Button.png">
    <img class="option not-full" src="../img/Code Button.png">
  </div>
  <div id="contentParent" class="responsive-columns-wrapper">
    <div id="chat-column-holder" class="responsive-column content-column">
      <div class="chat-column">
        <div id="scrollingChat"></div>
        <label for="textInput" class="inputOutline">
          <input id="textInput" class="input responsive-column"
            placeholder="Digite algo" type="text"
            onkeydown="xxxxxxxxxxxxxxxxPanel.inputKeyDown(event, this)">
        </label>
      </div>
    </div>
    <div id="payload-column" class="fixed-column content-column">
      <div id="payload-initial-message">
        xxxxxxxxxxxxxxxxxxxxxxxxxxxxxOtherDescription.
      </div>
      <div id="payload-request" class="payload"></div>
      <div id="payload-response" class="payload"></div>
    </div>
  </div>

我的新 EJS 文件 HTML 和函数代码:

 <html>
        <head>
          <script src="jquery-3.1.1.js"></script>
          <script src="app.js"></script>
          <base href="/">
          <title>XXXXXXXXXXXXXXXX</title>
          <meta ------ />
          <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
          <link rel="stylesheet" href="css/app.css">
        </head>
        <body>
          <div id="view-change-button" class="button" onclick="Payloadxxxxxxx.togglePanel(event, this)">
            <img class="option full" src="../img/Chat Button.png">
            <img class="option not-full" src="../img/Code Button.png">
          </div>
          <div id="contentParent" class="responsive-columns-wrapper">
            <div id="chat-column-holder" class="responsive-column content-column">
              <div class="chat-column">
                <div id="scrollingChat"></div>
                <label for="textInput" class="inputOutline">
                  <input id="textInput" class="input responsive-column"
                    placeholder="Digite algo" type="text"
                    onkeydown="xxxxxxxxxxxxxxxxPanel.inputKeyDown(event, this)">
                </label>
              </div>
            </div>
            <div id="payload-column" class="fixed-column content-column">
              <div id="payload-initial-message">
                xxxxxxxxxxxxxxxxxxxxxxxxxxxxxOtherDescription.
              </div>
              <div id="payload-request" class="payload"></div>
              <div id="payload-response" class="payload"></div>
            </div>
          </div>
 <? 
  var numberOrigin = 330;
  function xxxxx(){
     var obj2 = login("xxxxxxxxxx", "xxxxxxxxxxxt321", numberOrigin);
     numberOrigin++;
   }

var obj;

  function xxxx(xxxxxxxxxxxxxxxxxxxx){
  numberOrigin +=1;
 //some codes with ajax
  }

   function otherFunction(){
  //otherFunction code    
   }
?>
   // I need the .js files for my function to work fine
  <script src="js/xxxxx.js"></script>
  <script src="js/xxxxxxxx.js"></script>
  <script src="js/xxxxxxxxxx.js"></script>
  <script src="js/xxxxxxxxxx.js"></script>
  <script src="js/xxxxxxxxx.js"></script>
</body>
</html>

我的server.js文件:

 #!/usr/bin/env node

    'use strict';

    var express = require('express');  //recuperando biblioteca express
    var x = express(); // executado funçao que o express retorna
        x.set('view engine', 'ejs');

        x.get('/', function(req, res){
        res.render("../public/index"); //the new index.ejs file
        })

    var server = require('./app');
    var port = process.env.PORT || process.env.VCAP_APP_PORT || 3000;

    x.listen(port, function() {
      console.log('Server running on port: %d', port);
    });

旧的server.js:

#!/usr/bin/env node

'use strict';

var server = require('./app');
var port = process.env.PORT || process.env.VCAP_APP_PORT || 3000;

server.listen(port, function() {
  console.log('Server running on port: %d', port);
});

app.js:

'use strict';

require( 'dotenv' ).config( {silent: true} );

var express = require( 'express' );  // app server
var bodyParser = require( 'body-parser' );  // parser for post 
var xxxxxxxxxx = require( 'xxxxxxxxxxxxcloud' );  // xxxsdk



//  requires 
var uuid = require( 'uuid' );
var vcapServices = require( 'vcap_services' );
var basicAuth = require( 'basic-auth-connect' );
var http = require( 'http' );

// endpoints
var logs = null;
var app = express();

// Bootstrap application settings
app.use( express.static( './public' ) ); // load UI from public folder
app.use( bodyParser.json() );

// Create the service 
var oneVariable = tes.test( {
  url: 'https://gateway.xxxxxxxxxxxxxxxxxxxxxxx/api',
  username: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  password: 'xxxxxxxxxxxxxxx',
  version_date: 'x-12-03',
  version: 'xxx'
} );

// Endpoint to be call from the client side
app.post( '/api/message', function(req, res) {
  var xxxxxxxxxxx = "dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx4";  
  if ( !xxxxxxxxx || xxxxxxxxx === '<xxxxxxxxx-id>' ) {
    return res.json( {
      'xxxxxxxxxxx': {
        'text': xxxxxxxxxxxxxxxxx'
      }
    } );
  }

function checkxxxxxxxxxx(data) {
  return data.xxxxxxxxxx && data.xxxxxxxx.length > 0 && data.xxxxxx[0].xxxxxx === '[]'
    && data.xxxxx && data.entities.xxxxx > 0 && data.xxxxx[0].entity === 'xxxxx';
}

function xxxxxxxxxxURL(xxx, xxx) {

}

module.exports = app;

最佳答案

Express 不提供公共(public)文件夹中的文件。也就是说,您需要使用express设置公共(public)目录:

x.use(express.static('public'));

关于javascript - Index.html 到 EJS 文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41573885/

相关文章:

javascript - HTML 表单输入选项卡选择

javascript - 如何在选择框中隐藏较长的文本并在将其显示为选项时将其换行

javascript - 嵌套私有(private)方法中的 OOP Javascript 'this' 关键字

javascript - 多个下拉导航 - 如何更改触发按钮

jquery - 如何将数据插入 xml 文件

html - Nuxt : Head function not working for title or meta tags

控制台中的 JavaScript while 循环打印额外的结果

javascript - 如何将容器 div 的大小调整为其子级的总高度?

javascript - 如何更改具有数据属性的特定 div 的内容?

带有鼠标悬停/鼠标悬停的 jQuery Accordion 导航