Vue笔记(8) - 案例

本文是Vue项目的实践笔记,涵盖了初始化项目、安装Vant组件库、实现Tabbar与路由、使用Navbar及获取文章列表的功能。在获取文章列表部分,详细讲述了如何封装Axios、articleApi模块以及ArticleInfo组件,同时实现了上拉加载更多和下拉刷新功能。
摘要由CSDN通过智能技术生成

创建项目: vue create demo-toutiao ,需要勾选router模块,但不适用history模式。还需要勾选Eslint来约束代码风格

 

关于文件夹: components文件夹和views文件夹的区别,components存放可复用的或者使用在页面内的自定义组件,views文件夹存放的是通过路由控制的组件。

整理项目: 修改App.vue代码,修改路由配置代码,删除components和views里的所有组件

<!-- App.vue -->
<template>
  <div id="app">

  </div>
</template>

<script>
export default {

}
</script>

<style lang="scss">
</style>
// router/index.js
import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

// 路由规则
const routes = []
// 创建路由对象
const router = new VueRouter({
  routes
})

export default router

1. 初始化

1.1 安装Vant组件库

vant官网: 点我进入

安装:npm i vant@latest-v2 -S

引入组件: vant提供了三种引入方式,推荐使用 babel-plugin-import 的插件去按需自动引用。  但是本次开发我们使用另一种方案,全部引入的方案(为了开发方便,打包时不能这样做会增加项目体积)

import Vue from 'vue'
import App from './App.vue'
import router from './router'
// 引入vant
import Vant from 'vant'
import 'vant/lib/index.css'

Vue.config.productionTip = false
// 安装
Vue.use(Vant)

new Vue({
  router,
  render: h => h(App)
}).$mount('#app')

2 使用tabbar并开启路由

1. 在views中创建 Home.vue和User.vue 这两个是页面性质的被路由来操控是否显示所以在 views

2. 修改App.vue添加tabbar

<template>
  <div id="app">
    <!-- 路由占位符 -->
    <router-view></router-view>
    <!-- tabbar -->
    <van-tabbar route>
      <van-tabbar-item icon="home-o" replace to="/home">首页</van-tabbar-item>
      <van-tabbar-item icon="user-o" replace to="/user">我的</van-tabbar-item>
    </van-tabbar>
  </div>
</template>

<script>
export default {
  data () {
    return {}
  }
}
</script>

<style lang="scss">
</style>

3.配置路由

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '@/views/Home'
import User from '@/views/User'

Vue.use(VueRouter)

// 路由规则
const routes = [
  { path: '/', redirect: '/home' },
  { path: '/home', component: Home },
  { path: '/user', component: User }
]
// 创建路由对象
const router = new VueRouter({
  routes
})

export default router

4. 绘制 我的 页面

<template>
  <div class="user-container&
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值