前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅入深出Vue:文章列表

浅入深出Vue:文章列表

作者头像
若羽
发布2019-07-17 22:15:51
7440
发布2019-07-17 22:15:51
举报
文章被收录于专栏:Code思维奇妙屋Code思维奇妙屋

终于到我们小项目的最后一个功能了,那就是列表页展示!

新建组件

先来新建组件 List.vue

代码语言:javascript
复制
<template>
    <div></div>
</template>

<script>
    export default {
        name: "List"
    }
</script>

<style scoped>

</style>

然后添加对应的路由对象:

代码语言:javascript
复制
{
    path: '/list',
    name: 'list',
    component: () => import('./views/List.vue')
}

编写页面代码

这里我们选择 ElementUI 中的 Table 组件来进行展示,文章列表接口的数据定义如下:

代码语言:javascript
复制
{
    "Code": 200,
    "Message": "后台返回的消息",
    "Data": [
        {
            "Id": 0, //文章的ID
            "Title": "标题",
        },
        ...
    ]
}
代码语言:javascript
复制
<template>
    <div>
        <el-row>
            <el-table :data="list">
                <el-table-column prop="Id" label="#">
                </el-table-column>

                <el-table-column prop="Title" label="标题">
                </el-table-column>
            </el-table>
        </el-row>
    </div>
</template>

<script>
    import axios from 'axios'
    export default {
        name: "List",
        data() {
            return {
                list: [],
            }
        },
        mounted() {
            this.init()
        },
        methods: {
            init() {
                axios.get('https://451ece6c-f618-436b-b4a2-517c6b2da400.mock.pstmn.io/list')
                    .then(res => {
                        this.list = res.data.Data
                    })
            }
        }
    }
</script>

<style scoped>

</style>

效果如下:

这个效果不是很好看啊。 用 el-col 控制一下大小看看:

代码语言:javascript
复制
<template>
    <div>
        <el-row>
            <el-col :span="16" :offset="4">
                <el-table :data="list">
                    <el-table-column prop="Id" label="#" width="80px">
                    </el-table-column>

                    <el-table-column prop="Title" label="标题" align="center">
                    </el-table-column>
                </el-table>
            </el-col>
        </el-row>
    </div>
</template>

这样看起来就好很多了。

最后

最后让我们在基础布局那加上发布和登录的按钮吧:

代码语言:javascript
复制
<template>
  <div id="app">
    <el-container>
      <el-header style="text-align:center;">
        <span>浅入深出Vue-入门篇</span>
        <span style="float: right;">
          <el-button type="primary" size="mini" icon="el-icon-edit">发布文章</el-button>
          <el-button type="default" size="mini">登录</el-button>
        </span>
      </el-header>

      <el-main>
        <router-view/>
      </el-main>
    </el-container>
  </div>
</template>

最后的效果:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 新建组件
  • 编写页面代码
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档