gpt4 book ai didi

node.js - 如何将 node-webkit 与快速服务器一起使用?

转载 作者:搜寻专家 更新时间:2023-10-31 22:25:58 25 4
gpt4 key购买 nike

我正在使用 nodejs 和 express 开发一个应用程序。
我想用 node-webkit 将它导出为一个包。

如何启动服务器并使用它运行应用程序?

最佳答案

我正在努力学习这个。以下是将 express 应用程序转换为 Node webkit 应用程序的基础知识。

我假设您有一个安装了两个模块的 node.js 应用程序。第一个是 express.js,第二个是一些模板引擎。我正在使用 Handlebars ,所以我将在这个例子中使用它。

我还将假设您要转换的应用程序是最简单的应用程序,简而言之,我将假设您正在使用 express 做两件事 - 运行服务器并响应呈现 View 文件的单个路由

第 1 步。

下载 Node webkit:http://nwjs.io/

第 2 步。

解压

第 3 步。

打开控制台并 cd 进入新创建的文件夹(我将此目录称为 app-parent 从这里开始)。一旦你在那里 - 运行这个命令:

npm install express

完成后运行:

npm install express-handlebars

第 4 步:

app-parent 中创建两个额外的文件夹。一个名为 resources,另一个名为 views。同样在 app-parent 中创建一个名为 package.json 的文件。

将以下代码复制到package.json

{
"name": "app",
"main": "resources/index.html"
}

第 5 步:

转到资源文件夹并创建一个名为 index.html 的文件。在此复制以下代码:

<!DOCTYPE html>
<html>

<head>
<meta charset="UTF-8">
<title></title>

</head>
<!--______________________________________________________BEGIN APP-->

<body>
<script>
</script>
<script>
var express = require('express');
var app = express();

var expressHbs = require('express-handlebars');

app.engine('hbs', expressHbs({
extname: 'hbs'
}));

app.set('view engine', 'hbs');


app.get("/", function(req, res) {
res.render("index", {
item: "weeeeeeeee"
})
})



app.listen("3000", function(err) {

if (err) {
console.log("server is not working");
} else {
console.log("Server is working on 3000");
}
})



window.location.href = 'http://localhost:3000';
</script>
</body>
<!--______________________________________________________END APP-->

</html>

第 7 步。

转到 app-parent 中的 View 文件夹并创建一个名为 index.hbs 的新文件。在此文件中复制以下代码。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>

</head>
<!--______________________________________________________BEGIN APP-->
<body>
<p>Oink</p>
{{item}}
</body>
<!--______________________________________________________END APP-->
</html>

最后一步。

app-parent 中,单击名为 nw.exe 的文件。您的应用应该会启动。

完成

关于node.js - 如何将 node-webkit 与快速服务器一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21826407/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com