Vue.js + Node.js + MongoDB 的网站搭建示例:
安装和初始化项目
使用 Vue Cli 初始化前端项目:
vue create my-site
使用 Express 初始化后端项目:
npx express-generator my-site-server
前端开发
进入前端目录,使用 Vue.js 编写前端代码,包括页面设计、组件编写等。主要使用到的技术栈有:
Vue.js:用于创建用户界面
Vue Router:用于实现路由功能
Vuex:用于进行状态管理
Axios:用于与后端进行交互
下面是一个简单的前端代码示例:
<template>
<div>
<h1>{{ title }}</h1>
<ul>
<li v-for="post in posts" :key="post._id">
{{ post.title }}
</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
title: 'My Site',
posts: [],
};
},
async created() {
const response = await axios.get('/api/posts');
this.posts = response.data;
},
};
</script>
后端开发
进入后端目录,使用 Node.js 搭建后端服务器,编写接口,连接数据库等。使用 Express 框架可以简化后端开发。主要使用到的技术栈有:
Node.js:用于搭建后端服务器
Express:用于简化后端开发
MongoDB:用于存储数据
下面是一个简单的后端代码示例:
const express = require('express');
const mongoose = require('mongoose');
const app = express();
const port = 3000;
app.get('/api/posts', async (req, res) => {
const Post = mongoose.model('Post');
const posts = await Post.find();
res.json(posts);
});
mongoose.connect('mongodb://localhost/my-site');
const PostSchema = new mongoose.Schema({
title: String,
content: String,
});
mongoose.model('Post', PostSchema);
app.listen(port, () => {
console.log(`Server listening on port ${port}`);
});
数据库连接
需要先安装 mongoose 插件:
npm install --save mongoose
然后在后端代码中连接 MongoDB 数据库和定义数据模型。具体配置如下:
mongoose.connect('mongodb://localhost/my-site');
const PostSchema = new mongoose.Schema({
title: String,
content: String,
});
mongoose.model('Post', PostSchema);
部署网站
使用 PM2 等工具将项目部署到服务器上,可以使用 Nginx 等工具进行反向代理和负载均衡。
优化网站
可以进行前端和后端的性能优化,包括页面优化、服务器优化等。此外还需要考虑网站的安全性,加入安全验证等机制。
以上是一个简单的 Vue.js + Node.js + MongoDB 的网站搭建示例。具体的代码配置可能因个人开发需求和环境而异,需要根据实际情况进行调整。