在节点js中加载本地jquery.js文件

时间:2014-12-24 16:24:51

标签: javascript jquery node.js socket.io

我想在我的节点js聊天应用程序中加载本地jquery文件。我搜索了很多,但我找不到合适的解决方案。

<!doctype html>
<html>
  <head>
    <title>Socketio</title>
  </head>
  <body>
      <!--This wont work -->
      <script src="/socket.io/jquery.min.js"></script> 
        <!--This will work -->
      <script src="/socket.io/socket.io.js"></script>

  </body>
</html>

我只是将jquery.js文件复制到socket.io文件夹。socket.io.js文件正确加载但是jquery文件没有。请帮助我 这是我的index.js文件

var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);


app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
});

server.listen(3000, function(){
  console.log('listening on *:3000');
});

6 个答案:

答案 0 :(得分:1)

最后我找到了答案。我只是通过这种方式从http://localhost/assets/jquery.min.js加载来自localhost的jquery文件。

答案 1 :(得分:1)

app.use('/assets', express.static('assets'))

将你的jquery.min.js文件放在relative&#34; /assets/jquery.min.js"路径,然后访问为http://localhost/assets/jquery.min.js

&#34;本地主机&#34;也可能是你的IP地址。

就个人而言,我需要这个,因为我需要一个完全自包含的演示来独立运行互联网连接。墨菲的法律还活着,会议时间很快。

答案 2 :(得分:0)

您可能希望允许Express框架呈现HTML并传入静态jQuery文件。那是我怎么做的。

This page解释了如何重构应用程序以通过节点路由而不是HTML代码提供jquery文件。

答案 3 :(得分:0)

latitude,longitude|latitude,longitude|... (n of these pairs) ...|latitude,longitude

答案 4 :(得分:0)

这对我有用。 (在app.js内部)

const express = require('express');//path to express module
const path = require('path');
const app = express();
app.use(express.static(path.join(__dirname, 'public')));

我的文件结构如下:

  server.js
  app.js
> public
    index.html
  > assets
    > js
        jquery.min

然后像往常一样从index.html导入jquery:

<script src="assets/js/jquery-3.3.1.min.js"></script>

答案 5 :(得分:-1)

一种解决方法是使用在线源文件链接。 尝试使用以下内容加载jquery,

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

我的工作很好。