![](/img/trans.png)
[英]New to node.js; need help importing an npm module into my front-end vanilla JS project
[英]Connecting Node.js script to a front-end project
作为一名JavaScript新手,我想使用Node.js创建一个后端解决方案很少的前端项目。
我有一些变量和一个按钮的用户界面。 这些变量必须传递到一个简单的.txt文件(在我的文件系统上)并覆盖其内容。 为此,我使用了一个nodejs脚本:
var fs = require('fs');
fs.writeFile('log.txt', 'This is my text', function (err) {
if (err) throw err;
console.log('Replaced!');
});
但是我希望它能在onClick上工作,而这只能在命令行下工作。
因此,我有以下两个问题:
我100%肯定我遗漏了一些东西(也许是Web服务器,但是即使那样,怎么办?)。 我进行了研究,但发现的只是太过分了,或者我什至都不了解。 我可以将任何帮助,教程,建议或仅关键字用于我的研究。
Node.js没有像其他一些脚本语言(如Python或VB)那样具有内置的前端库。 要创建一个node.js,您的直觉是正确的,因为您将需要您的应用将其自身公开为网络服务器。 流行的库可以称为Express,它很容易上手。 我建议您按照快速入门指南中的说明进行操作。
在这里,您可以将代码包装在网络服务器的路由内(例如/save
)
var fs = require('fs');
var express = require('express');
var app = express();
app.get('/save', function (req, res) {
fs.writeFile('log.txt', 'This is my text', function (err) {
if (err) throw err;
console.log('Replaced!');
res.send('Replaced!')
});
})
app.listen(3000, () => console.log('Example app listening on port 3000!'))
在安装了依赖关系的此示例中,在浏览器中打开localhost:3000 / save将导致您的代码运行。
看快递 。 这是一个“快速,不受限制的,极简的节点Web框架”。 这样,您可以构建一个小型网络服务器:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World');
});
app.listen(3000); // Webserver is running on port 3000
如果运行它并通过http://localhost:3000
进入浏览器,它将显示Hello World
。
现在,您要做的就是每次请求特定URL时都调用日志记录功能。
var fs = require('fs');
function log(text, callback) {
fs.writeFile('log.txt', text, callback);
}
app.get('/', function (req, res) {
log('This is my text', function (err) {
if (err) throw err;
res.send('Replaced!');
});
});
现在,当您单击按钮时,您需要向服务器发出AJAX请求(也许使用jQuery )。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.