一、博客展示

1、api接口

import request from '@/utils/request.js'
export default {
limitSelect(current,size) {
return request({
url: `/service_blog/m-blog/limitSelect/${
current}/${
size}`,
method: 'get'
})
},
blogById(id){
return request({
url:`/service_blog/m-blog/blogById/${
id}`,
method:'get',
})
},
deleteBlogById(id){
return request({
url:`/service_blog/m-blog/blogById/${
id}`,
method:'delete',
})
},
updateBlogById(data){
return request({
url:`/service_blog/m-blog/blogById`,
method:'put',
data
})
},
insertBlog(data){
return request({
url:`/service_blog/m-blog/insertBlog`,
method:'post',
data
})
},
}
2、代码

<template>
<div class="blog">
<Handler id="handler"></Handler>
<el-row type="flex" justify="center">
<el-col :span="18">
<div class="block">
<el-timeline>
<el-timeline-item timestamp="" placement="top">
<el-card id="item" @click="blogDetailsave()">
<h4 style="text-align: center;" @click="blogDetailsave()">编辑一篇新的博客</h4>
<div class="buttonC"></div>
</el-card>
</el-timeline-item>
<el-timeline-item v-for="blog in blogs" :key="blog.id" :timestamp="blog.gmtModified" placement="top">
<el-card id="item">
<h4 @click="blogDetail(blog.id)">{
{
blog.title}}</h4>
<p @click="blogDetail(blog.id)">名字 提交于 {
{
blog.gmtModified}}</p>
<div class="buttonC">
<el-button id="a" type="primary" icon="el-icon-edit" circle @click="updateBlogById(blog.id,blog.userId)"></el-button>
<el-button id="a" type="success" icon="el-icon-check" circle @click="blogDetail(blog.id)"></el-button>
<el-button id="a" type="danger" icon="el-icon-delete" circle @click="deleteBlogById(blog.id,blog.userId)"></el-button>
</div>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
<el-pagination
:page-size="size"
:current-page="current"
background
@current-change="currentChange"
style="opacity: 0.5;box-shadow: 5px 5px 5x #000000; "
layout="prev, pager, next"
:total="total">
</el-pagination>
</el-col>
</el-row>
</div>
</template>
<script>
import Handler from '@/components/Handler.vue'
import blog from '@/api/blog.js'
export default{
data(){
return{
current:1,
size:3,
total:1,
blogs:{
},
userId:0,
}
},
components:{
Handler
},
created() {
if(this.$store.state.userInfo!=null||this.$store.state.userInfo!=undefined){
this.userId=this.$store.state.userInfo.id
}
this.init()
},
methods:{
init(){
this.limitSelect