基于vue3+ts+elementplus+vite+vuex+router4的博客网

这是一个结合vue3、typescript、elementplus、vite、vuex、router4和spring boot的博客平台。前端实现了博客首页、技术文章列表、分页查询、文章详情、评论、注册登录等功能;后端利用spring boot提供了文章发布、markdown支持、评论管理和用户管理等服务。

一 博客网介绍

博客网是基于vue3+ts+elementplus+vite+vuex+router4+springboot打造的前台和后台项目,前台有博客的首页,技术文章列表,文章分页,文章高级查询,文章详情,文章评论,注册,登录,关于我们等,后台管理系统 发布技术文章,支持markdown格式,markdown上传文件,评论管理,用户管理,系统管理等等功能

二 技术说明

前端:
vue3
typescript
vuex
elementplus
vite2
router4
markdown编辑
后端
springboot+ssm

三 项目结构图

在这里插入图片描述

四 功能设计和实现

博客首页
在这里插入图片描述
核心代码实现:

<el-main style="height:800px" class='main_index_cls'>
              <el-image
               style="width: 256px; margin-top:100px; height: 256px"
               src="../../static/logo/blog.png" 
              >
              </el-image>

             <div style="font-size:40px;color:green;height:30px;font-weight:900">VueBlog</div>

              <el-button type="success"  style="font-size:30px;margin-top:100px">开始阅读-></el-button>

             <el-divider></el-divider>

             <el-row :gutter="20">
                <el-col :span="8">
                   <div style="display:flex;flex-direction:column;justify-content: flex-end">
                       <span style='font-size:28px;text-align:left'>轻量</span>
                       <span style='text-align:left;margin-top:20px'>vue以少量代码完成复杂设计</span>
                  </div>
                </el-col>
                <el-col :span="8">
                   <div style="display:flex;flex-direction:column;justify-content: flex-end">
                       <span style='font-size:28px;text-align:left'>快速</span>
                       <span style='text-align:left;margin-top:20px'>项目启动,加载速度都非常的块</span>
                  </div>
                </el-col>
                 <el-col :span="8">
                   <div style="display:flex;flex-direction:column;justify-content: flex-end">
                       <span style='font-size:28px;text-align:left'>技术文章</span>
                       <span style='text-align:left;margin-top:20px'>高品质,海量原创型技术文章,大咖带您进入<br>技术的海洋</span>
                  </div>
                </el-col>
            </el-row>
      </el-main>

技术文章列表

获取后台的数据,然后展示到页面中,并且进行分页展示。 项目内容很多,可能一篇文章无法概述完整,需要的 可以咨询 扣扣 二五七九六九二六零六
在这里插入图片描述

核心代码

const getAllArticle = ()=>{

        $store.dispatch('article/getArticleList', queryParams)
        .then((data) => {
          articleList.value = data.rows
          console.log(articleList.value)
          total.value = data.total
        })
        .catch((err) => {
          console.log('失败' + err)
        })

    }

博客详情
展示博客的内容,展示markdown的内容, 项目内容很多,可能一篇文章无法概述完整,需要的 可以咨询 扣扣 二五七九六九二六零六

在这里插入图片描述
核心代码

const getArticleById = (id:any)=>{
         $store.dispatch('article/getArticleById', {id:id})
            .then((data) => {
                 article.value = data
                 queryCommentsByAId()
            })
            .catch((err) => {
            console.log('失败' + err)
            })
    }

后台发布博客
在这里插入图片描述

核心代码:

 const submitForm =() =>{
      articleformRef.value.validate(valid => {
        if (valid) {
          
          if (articleformState.form.id !== undefined) {
            $store.dispatch('article/updateArticle', articleformState.form).then(data => {
              open.value = false
              getList()
            })
          }else{

            $store.dispatch('article/saveArticle', articleformState.form).then(data => {
              open.value = false
              getList()
            })
          }
        }
      })
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值