第一步:初始化项目

1、构建项目 - 图1

第二步:建立与本地数据库的连接

1、构建项目 - 图2

top250.js:
  1. const mongoose = require("mongoose");
  2. //1.连接本地数据库
  3. mongoose.connect( 'mongodb://127.0.0.1:27017/movies', {useNewUrlParser: true});
  4. //2.在本地定义一个Schema和远程数据库的字段映射
  5. var Top250Schema = new mongoose.Schema({
  6. name:String,
  7. rating:Number
  8. });
  9. // 3.创建数据模型,操作数据库
  10. var Top250Model = mongoose.model("top250",Top250Schema); //是我们获取的数据库里Top250的那张表
  11. module.exports = Top250Model;

第三步:创建服务器路由

Tips:post需要使用到中间件koa-bodyparser,还需要注意使用跨域中间件koa2-cors。
  1. const koa = require("koa");
  2. const router = require("koa-router")();
  3. const Top250Model = require("./models/top250");
  4. const cors = require("koa2-cors");
  5. const bodyParser = require("koa-bodyparser");
  6. const app = new koa();
  7. //获取数据库列表数据
  8. router.get("/top250",async ctx=>{
  9. var data = await Top250Model.find({})
  10. ctx.body = data
  11. })
  12. app.use(cors());
  13. app.use(bodyParser());
  14. app.use(router.routes());
  15. app.listen(8080);

第四步:前端获取路由数据

  1. <div class="" id="app">
  2. <table class="table table-hover">
  3. <thead>
  4. <tr>
  5. <th>编号</th>
  6. <th>电影名</th>
  7. <th>评分</th>
  8. <th>操作</th>
  9. </tr>
  10. </thead>
  11. <tbody>
  12. <tr v-for="item in movies" :key="item.name">
  13. <td>{{item._id}}</td>
  14. <td>{{item.name}}</td>
  15. <td>{{item.rating}}</td>
  16. <td>
  17. <button type="button" class="btn btn-danger" @click="doDelete(item._id)">delete</button>
  18. <button type="button" class="btn btn-warning" @click="doUpdate()">update</button>
  19. </td>
  20. </tr>
  21. </tbody>
  22. </table>
  23. </div>
  24. <script>
  25. new Vue({
  26. el:"#app",
  27. data:{
  28. movies:[]
  29. },
  30. mounted() {
  31. this.request();
  32. },
  33. methods: {
  34. //请求数据
  35. request(){
  36. $.ajax({
  37. type: "get",
  38. url: "http://localhost:8080/top250",
  39. dataType: 'json'
  40. }).then(res=>{
  41. this.movies = res;
  42. });
  43. },
  44. },
  45. })
  46. </script>