【问题标题】:Including of external js while using node.js在使用 node.js 时包括外部 js
【发布时间】:2015-05-26 08:47:43
【问题描述】:

我有如下代码用于使用 socket.io 的聊天应用程序

<htmL>
<head>
<title>Chat with socket.io and node.js</title>
<style>
#chat{
height:500px;
}
</style>
</head>
<body>
<div id="chat"></div>
<form id="send-message">
<input size="35" id="message"></input>
<input type="submit"></input>
</form>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="socket.io/socket.io.js"></script>
<script>

jQuery(function($){
var socket=io.connect();
var $messageForm=$('#send-message');
var $messageBox=$('#message');
var $chat=$('#chat');

$messageForm.submit(function(e){
e.preventDefault();
socket.emit('send message',$messageBox.val());
$messageBox.val('');
$messageBox.focus();
});

socket.on('new message',function(data){
$chat.append(data+"<br/>");
});

});
</script>
</body>
</html>

当我运行它时,它工作正常。

但是,当我使用本地 sorted 更改 jquery 文件时,即使它存在于那里,它也没有得到该文件。 请解决我。

修改后的代码

<script src="/jquery.min.js"></script>
<script src="socket.io/socket.io.js"></script>

如何在此处包含外部 js 文件。

【问题讨论】:

  • 路径有问题,请添加应用的文件夹结构。这些文件在哪里?
  • 如果我给出了完整的路径,它给出的错误是:不允许加载本地资源。此路径已在正常应用程序中成功运行。但它给出了套接字程序的错误。

标签: javascript jquery node.js socket.io


【解决方案1】:

服务器端 jQuery

使用NPM在服务器端安装jQuery:https://www.npmjs.com/package/jquery

命令行:npm install jquery

代码:var $ = require('jquery');

简单。 *唧唧喳喳*

客户端 jQuery

将您的文件放在名为“public”的文件夹中并从那里加载文件

<script src="/public/jquery.min.js"></script>

然后在服务器端(我假设您使用的是 express?),执行:

//For Reference Only...
var express = require('express')
var app = express();

app.use('/public', express.static(__dirname + '/public'));

然后您要加载的任何其他静态文件都必须放在公用文件夹中。

【讨论】:

    猜你喜欢
    • 2012-06-19
    • 1970-01-01
    • 2011-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多