【问题标题】:Node is not resolving a client side module节点没有解析客户端模块
【发布时间】:2016-01-17 12:03:54
【问题描述】:

我有一个 Node 应用程序,我想在其中使用 socket.io 将数据传送到由 Smoothie 显示的客户端。我在两个不同的节点环境中(通过 NPM)安装了两个包,并且在这两种情况下都在我的项目的 node_modules 子目录中。其中一个环境是 BeagleBone Black,另一个是 Cloud9 IDE 环境。在这两种情况下,socket.io 模块都可以解析并正常工作,但路径名的组合无法解析冰沙模块(如果我直接从 GitHub 中提取它,我可以开始工作)。

以下是 Cloud9 IDE 的服务器端代码的相关位:

var app = require('http').createServer(handler)
  , io = require('socket.io').listen(app)
  , fs = require('fs')

app.listen(process.env.PORT, process.env.IP);

function handler (req, res) {
  fs.readFile(__dirname + '/NotWorking.html',
  function (err, data) {
    if (err) {
      res.writeHead(500);
      return res.end('Error loading index.html');
    }
    res.writeHead(200);
    res.end(data);
  });
}
.
.
.

以下是来自客户端的相关信息:

<!DOCTYPE html>
<html>
<head>
    <script src="smoothie/smoothie.js"></script>
    <script src="socket.io/socket.io.js"></script>
    <script>
    var line1 = new TimeSeries();
    var line2 = new TimeSeries();
    var socket = io.connect('http://demo-project.wisar.c9.io/');
    socket.on('news', function (data) {
        for (var property in data) {
            dataPoint = data[property];
        }
        line1.append(new Date().getTime(), dataPoint);
        line2.append(new Date().getTime(), 40);
        socket.emit('my other event', { my: dataPoint });
    });
</script>
.
.
.    

正如我所说,这两个模块都位于上述脚本所在的项目目录的 node_modules 子目录中。节点文档描述了应该如何解析包含(http://nodejs.org/api/modules.html#modules_all_together),我认为我可以按照它如何通过 index.js 路由解析到 socket.io 的链接的路径......但它也可以工作当我在前面放一个“/”时,我找不到路径。没有路径的排列或组合使冰沙模块解析。顺便说一句,smoothie 是一个小型图表应用程序,可以在 npm 中以该名称找到。

任何帮助将不胜感激。

【问题讨论】:

    标签: node.js node-modules


    【解决方案1】:

    如果你当前的文件和node_modules在同一个目录下,那么要加载smoothie试试脚本标签src中的这个路径:

    ./node_modules/smoothie/smoothie.js
    

    路径smoothie/smoothie.js 没有给出smoothie.js 的位置,它位于node_modules/smoothie/smoothie.js。这对我有用,我希望这对你有用。

    【讨论】:

      猜你喜欢
      • 2016-01-01
      • 2017-06-26
      • 2020-02-03
      • 1970-01-01
      • 2018-04-27
      • 2021-11-06
      • 1970-01-01
      • 2017-07-16
      • 2019-04-28
      相关资源
      最近更新 更多