EJS模板中的外部js
我使用EJS有一些麻烦。 我想在我的模板中使用一个JavaScript文件,但我找不到正确的方式来实现它,这里是我的代码到目前为止:
game.ejs:
<!DOCTYPE html> <html> <head> <title>DDD-Duel !!!</title> <link rel="stylesheet" type="text/css" href="/view/css/game.css"> <script type="text/javascript" src="/socket.io/socket.io.js"></script> <script type="text/javascript" src= "/actions_client.js"></script> </head> <body> <style type="text/css"> ... </style> // My body </body> </html>
无论我为脚本/actions_client.js尝试什么path,视图在浏览器中加载时都找不到。 这也许是node.js的一个问题我也使用,我不知道在哪里把我的脚本,以使我的视图find它(什么和/或文件夹localhost:8080 /?)
问候
编辑:我不明白的东西是如何查看findsocket.io/socket.io/js,而我没有find它时,我在我的电脑上search?
编辑:这是我的代码在我的节点文件的方式:
var express = require('express'); var app = express(), server = require('http').createServer(app), io = require('socket.io').listen(server), fs = require('fs'), composants = require('./modules_persos/composants');
使用
app.use(express.static(__dirname + '/ressources'));
将“localhost:8080”文件夹设置为./resource。
__dirname由nodejs自动生成,并将文件path包含到存储node.js脚本的文件夹中。
但是,/ /socket.io/socket.io.js
将在__dirname + '/socket.io/socket.io.js'
。
在快速app.js文件中,你只需使用
app.use(express.static(path.join(__dirname, 'public')));
然后你可以在公共文件夹或ejs模板中的js文件的在线链接中添加外部脚本。 像
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
我认为这对你有帮助。 你也可以看到这里