首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Node.js脚本连接到前端项目

将Node.js脚本连接到前端项目
EN

Stack Overflow用户
提问于 2018-02-12 19:25:35
回答 2查看 15.7K关注 0票数 4

作为javascript新手,我想使用Node.js创建一个前端项目,其中包含一个非常小的后端解决方案。

我有一个包含一些变量和一个按钮的用户整数。这些变量必须传递给一个简单的.txt文件(在我的文件系统上),并覆盖它的内容。为此,我使用了一个nodejs脚本:

代码语言:javascript
复制
var fs = require('fs');

fs.writeFile('log.txt', 'This is my text', function (err) {
  if (err) throw err;
  console.log('Replaced!');
});

但是我希望它能够运行onClick,而这只在命令行中起作用。

因此,我有以下两个问题:

  1. 我想用单击按钮更新.txt文件。所以,基本上,当我点击按钮时,上面写的代码必须被执行。但我不明白,如何用这个nodejs文件连接前端。
  2. 我希望内容是动态的。我确信,一旦第一个问题解决了,这将是直接的,但现在我也不知道。

我百分之百肯定我错过了什么东西(也许是一个网络服务器,但即便如此,怎么会呢?)我做了我的研究,但我发现要么是过度杀戮,要么我甚至不明白。任何帮助,一个教程,一个建议或只是一个关键字,我可以用在我的研究。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-12 19:45:00

看看快递。这是一个“快速,不固执己见,极简主义的节点网络框架”。有了这个,您就可以构建一个小型With服务器:

代码语言:javascript
复制
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时调用日志函数。

代码语言:javascript
复制
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)。

票数 4
EN

Stack Overflow用户

发布于 2018-02-12 19:41:29

Node.js没有一个内置的前端库,就像其他一些脚本语言,比如Python或VB。要创建一个node.js,您的直觉是正确的,因为您需要您的应用程序将自己暴露为一个网络服务器。用来做这件事的流行库叫做express,很容易开始。我建议你跟随快速启动教程进入它。

从这里开始,您可以将代码打包到webserver的路由中(例如,/save)。

代码语言:javascript
复制
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将使您的代码运行。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48754045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档