从Node JS访问javascript文件 - 初学者

时间:2016-07-05 06:16:09

标签: javascript html node.js

我的js目录中有几个javascript个文件。如何在nodeJS中添加这些文件。

例如,如果我要从HTML文档访问特定的<script src="js/main.js"></script> 文件,请使用以下代码:

js/main.js

但是,如何在nodeJS中访问同一个文件(NODE JS)?

更新

var app = express(); var bodyParser = require('body-parser'); app.use(bodyParser.json()); var urlencodedParser = bodyParser.urlencoded({ extended: false }); var jsonParser = bodyParser.json(); app.use(express.static(__dirname + '/public')); require('js/main.js'); var express = require('express');

        created_at         |   id
---------------------------+---------
 2015-08-27 04:59:40 -0400 | 9993833
 2015-08-27T03:40:07+12:00 | 9984557
 2015-08-26 03:04:35 -0400 | 9980626
 2015-08-26T13:11:51+12:00 | 9978784
 2015-08-26T06:18:04+12:00 | 9974751
 2015-08-25 00:21:47 -0400 | 9965448
 2015-08-24T15:01:09+12:00 | 9952732
 2015-08-23 22:47:32 -0400 | 9952671
 2015-08-24T12:49:57+12:00 | 9952099
 2015-08-24T12:04:04+12:00 | 9951839
 2015-08-23T17:49:24+12:00 | 9948236
 2015-08-23T11:37:53+12:00 | 9947015
 2015-08-21 03:13:16 -0400 | 9934367
 2015-08-21T18:36:18+12:00 | 9934148
 2015-08-21T17:23:30+12:00 | 9933522
 2015-08-21T15:33:50+12:00 | 9932949
 2015-08-20 12:06:37 -0400 | 9927425
 2015-08-21T03:16:58+12:00 | 9926932

我得到的错误:

  

错误:找不到模块'/js/main.js'

2 个答案:

答案 0 :(得分:3)

在你的server.js中添加以下行并检查一次。

app.use(express.static(__dirname ));

这会将您当前的目录设置为根目录,并将您的js文件夹置于根级别。如果找不到答案,请添加评论。

答案 1 :(得分:1)

应该有2个案例

1 - 在html文件中包含Javascript文件。

在这种情况下,您可以通过在HTML文件中编写以下代码,将您的javascript文件包含在HTML文件中。

<script src="js/main.js"></script>

2 - 在您的nodeJS服务器应用代码的其他javascript文件中使用一个Javascript文件代码。

NodeJS具有模块的概念,可以将代码写入多个文件中。

您可以将main.js文件的代码导出为模块 module.exports并通过包含以下行

在任何其他js文件中使用此代码
var mainModule = require('/path/main.js');

有关nodeJS中模块的更多详细信息,您可以查看文档https://nodejs.org/api/modules.html