无法访问Node.js中的其他文件

本教程将介绍无法访问Node.js中的其他文件的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

无法访问Node.js中的其他文件 教程 第1张

问题描述

注意:关于堆栈溢出有相同的问题,但这不是重复的。请仔细阅读。

我刚刚开始在Node上使用Socket.io,在我的HTML文件中,我无法访问其他文件,如图片。我在Stack Overflow上看到了解决此问题的答案,但没有一个对我有帮助。

我正在向客户端提供一个HTML文件,其中我的HTML文件位于/Client/Display/index.html

我尝试了一下:app.use(express.static(path.join(__dirname, 'public')));
及其变体(包括文件夹名而不是PUBLIC),并且我要求文件的顶部有路径,我收到以下错误:

ReferenceError: express is not defined
 at /home/runner/Buzzer/index.js:6:9
 at Script.runInContext (vm.js:130:18)
 at Object.<anonymous> (/run_dir/interp.js:209:20)
 at Module._compile (internal/modules/cjs/loader.js:999:30)
 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
 at Module.load (internal/modules/cjs/loader.js:863:32)
 at Function.Module._load (internal/modules/cjs/loader.js:708:14)
 at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
 at internal/main/run_main_module.js:17:47

我已经安装了我需要的所有东西。以下是我添加的错误:

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

以下是我的节点文件中的其他一些重要内容:

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

如果有人能帮我一下,我将不胜感激。

[编辑]

似乎如果我将任何内容放在文件夹中,js文件都找不到它。

推荐答案

好了,我意识到('express')()不同于('express')

我添加了:

var express = require('express');

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

这解决了我的问题。

好了关于无法访问Node.js中的其他文件的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。