以下是一个简化的示例,展示如何使用Node.js、Vue 3和MongoDB来创建一个简单的企业门户管理后台。
Node.js (使用Express框架):
const express = require('express');
const mongoose = require('mongoose');
const app = express();
// 连接到MongoDB数据库
mongoose.connect('mongodb://localhost:27017/enterprise_portal', { useNewUrlParser: true, useUnifiedTopology: true });
// 创建一个Schema
const employeeSchema = new mongoose.Schema({
name: String,
email: String,
department: String
});
// 创建Model
const Employee = mongoose.model('Employee', employeeSchema);
// 获取所有员工
app.get('/api/employees', async (req, res) => {
try {
const employees = await Employee.find();
res.json(employees);
} catch (err) {
res.status(500).json({ message: err.message });
}
});
// 启动服务器
app.listen(3000, () => {
console.log('Server running on port 3000');
});
Vue 3 (使用Vue CLI创建的项目):
<template>
<div>
<h1>员工列表</h1>
<ul>
<li v-for="employee in employees" :key="employee._id">
{{ employee.name }} - {{ employee.email }} - {{ employee.department }}
</li>
</ul>
</div>
</template>
<script>
import { ref } from 'vue';
import axios from 'axios';
export default {
setup() {
const employees = ref([]);
const fetchEmployees = async () => {
try {
const response = await axios.get('http://localhost:3000/api/employees');
employees.value = response.data;
} catch (error) {
console.error(error);
}
};
fetchEmployees();
return {
employees,
};
},
};
</script>
在这个例子中,我们创建了一个简单的Node.js后端,使用Express框架和Mongoose来与MongoDB通信,并定义了一个API端点来获取员工信息。我们还创建了一个Vue 3前端,使用axios来发送HTTP请求从后端获取数据,并利用Vue的响应式系统来更新DOM。这个例子展示了如何将前后端技术栈结合起来,创建一个功能完整的企业门户管理后台。