各种模仿首个NodeJS练习网站(Nodejs版)

各种模仿首个NodeJS练习网站(Nodejs版)

NAE上的部署地址http://eshare.cnodejs.net/ 换了个皮肤 http://rnblogs.ap01.aws.af.cm/ 伤不起的BUG啊 早两天感谢给了个NAE邀请码 今天就尝试着放上去了,不过数据库权限不够没法讲远程的数据导入进来,以至于访问仍旧超慢。

16 回复

各种模仿首个NodeJS练习网站(Nodejs版)

在学习Node.js的过程中,创建一个简单的网站是一个很好的起点。这个帖子将介绍如何创建一个基本的Node.js网站,并提供一些示例代码来帮助你入门。

创建项目结构

首先,我们需要创建项目的基本文件结构。假设我们的项目名为 my-first-node-app

my-first-node-app/
├── package.json
├── app.js
└── views/
    └── index.ejs

初始化项目

打开终端,进入项目目录并运行以下命令初始化一个新的Node.js项目:

npm init -y

这会生成一个 package.json 文件,其中包含项目的元数据。

安装依赖

接下来,安装必要的依赖库。我们将使用Express框架来快速搭建Web应用,并使用EJS模板引擎来渲染视图:

npm install express ejs

编写代码

现在我们开始编写应用的核心代码。打开 app.js 文件,并添加以下代码:

const express = require('express');
const path = require('path');

const app = express();
const PORT = process.env.PORT || 3000;

// 设置视图引擎为 EJS
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

// 静态文件服务
app.use(express.static(path.join(__dirname, 'public')));

// 路由处理
app.get('/', (req, res) => {
  res.render('index', { title: '我的第一个Node.js应用' });
});

// 启动服务器
app.listen(PORT, () => {
  console.log(`Server is running on http://localhost:${PORT}`);
});

创建视图

接下来,创建一个简单的HTML页面来展示我们的应用。在 views 目录下创建一个 index.ejs 文件,并添加以下内容:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title><%= title %></title>
</head>
<body>
  <h1>Welcome to My First Node.js App!</h1>
  <p>This is a simple application created using Node.js and Express.</p>
</body>
</html>

运行应用

最后,确保所有文件都已保存,然后在终端中运行以下命令启动应用:

node app.js

如果一切正常,你应该能在浏览器中访问 http://localhost:3000 并看到你的应用。

总结

通过以上步骤,你已经成功创建了一个简单的Node.js应用。这只是Node.js应用开发的开始,你可以在此基础上进一步扩展功能,比如增加数据库支持、用户认证等。希望这篇帖子对你有所帮助!


关于我们页面 顶部导航仍然是首页在高亮

看看我学习做的,差不多也很多 bug http://n.yimity.com

嗯 问题多多啊

地址打不开啊

得复制链接才能打开 带点win8色彩啊

学习学习。。

挺不错的啊

都是山寨过来的 没点原创元素在里面 呵呵

github上还是有很多开源的列子,可以多查查的

比我的好,写了那么久,什么都想自己写,结果写的很累。

这样确实是挺累的,我调查图像上传都弄了三四天了还没弄完, 想利用mongodb的Gridfs存储加上node-canvas进行缩略裁剪。一般我们的注意力也就一个把月吧 这自己写东西没那么上进,写着写着就中断了的。

欢迎给个源码看看

没能放到NAE上,还得研究下

针对“各种模仿首个NodeJS练习网站(Nodejs版)”这个帖子,可以提供一个简单的示例,展示如何创建一个基础的Node.js网站。这个网站将包含基本的功能,如首页、文章列表和详情页。这里会涉及到Express框架的应用以及MongoDB数据库的使用。

示例代码

首先,安装必要的依赖包:

npm init -y
npm install express mongoose body-parser ejs

然后,创建app.js文件,写入以下内容:

const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');

const app = express();

// 连接数据库
mongoose.connect('mongodb://localhost/nodejs_blog', {
    useNewUrlParser: true,
    useUnifiedTopology: true
});

// 定义模型
const PostSchema = new mongoose.Schema({
    title: String,
    content: String
});
const Post = mongoose.model('Post', PostSchema);

// 设置视图引擎
app.set('view engine', 'ejs');

// 使用中间件
app.use(bodyParser.urlencoded({ extended: false }));

// 路由
app.get('/', async (req, res) => {
    const posts = await Post.find();
    res.render('index', { posts });
});

app.get('/post/:id', async (req, res) => {
    const post = await Post.findById(req.params.id);
    if (!post) return res.status(404).send('Not Found');
    res.render('post', { post });
});

app.listen(3000, () => console.log('Server is running on port 3000'));

接着,创建views目录,并在其中添加index.ejspost.ejs文件,用于渲染页面。

  • index.ejs:
<!DOCTYPE html>
<html>
<head>
    <title>Node.js Blog</title>
</head>
<body>
    <h1>Posts</h1>
    <ul>
        <% for (let post of posts) { %>
            <li><a href="/post/<%= post._id %>"><%= post.title %></a></li>
        <% } %>
    </ul>
</body>
</html>
  • post.ejs:
<!DOCTYPE html>
<html>
<head>
    <title><%= post.title %></title>
</head>
<body>
    <h1><%= post.title %></h1>
    <p><%= post.content %></p>
    <a href="/">Back to Home</a>
</body>
</html>

以上代码实现了一个简单的博客系统,能够列出所有文章,并查看每篇文章的详细内容。这个示例可以作为一个起点,进一步扩展更多功能。希望这对理解Node.js入门项目有所帮助。

回到顶部