day8 路由

路由

  1. Vues是单页面应用。
  2. 路由两种模式。history模式,后端需要操作,返回首页。首页是这样的。
    在这里插入图片描述

另一种模式,不需要配置,首页是这样的,多了个/#/
在这里插入图片描述

  1. router-link就相当于一个a标签。
    在这里插入图片描述

  2. 配置路径。一个页面的大组件,放在views下面。
    在这里插入图片描述
    在router/index.js里引入组件
    在这里插入图片描述
    配置路径
    在这里插入图片描述

  3. 编程式导航,跳转到path
    在这里插入图片描述

动态路由

  1. 输入news+id可以拿到id
    在这里插入图片描述
    在这里插入图片描述
    path配置需要加:id
    在这里插入图片描述
    新闻页面组件可以这样拿到id
    在这里插入图片描述

  2. 查询天气页面。
    导入组件。
    在这里插入图片描述
    添加页面路径。
    在这里插入图片描述
    编写天气组件。包括异步调用和风天气API。

<template>
    <div>
        <h1>天气</h1>
        <h2>城市:{{city}}</h2>
        <h3>穿衣指数:{{chuanyi}}</h3>
        <h3>风向:{{xiche}}</h3>
        <router-link to='/about'>进入about页面</router-link>
    </div>
</template>

<script>
import axios from 'axios'
export default {
    data() {
        return {
            city:null,
            chuanyi:null,
            xiche:null
        }
    },

    async beforeMount(){
    let key = '81d31a317f9c48e5b2d10e8e0c4a2734';
    let httpUrl = `https://free-api.heweather.net/s6/weather/lifestyle?location=${this.$route.params.city}&key=${key}`;
    let res = await axios.get(httpUrl)
    let data = res.data
    this.city = data.HeWeather6[0].basic.location;
    this.chuanyi = data.HeWeather6[0].lifestyle[1].txt;
    this.xiche = data.HeWeather6[0].lifestyle[6].txt;
    console.log(res)
    }
}
</script>

访问路径城市,弹出天气。
在这里插入图片描述

  1. 路由监听。跳转时输出路由更改。
    在这里插入图片描述
  2. 嵌套路由。在路由中写子路由。
    首先路径写好。
    在这里插入图片描述
    导入组件。
    在这里插入图片描述

父组件bignews
在这里插入图片描述
效果。
在这里插入图片描述

命名视图和组件传参

  1. 通过路径跳转。
  2. 通过名字跳转。如果有id参数,要设置params参数。
    v
  3. query就是问号后面的内容,也可以拿到。
    在这里插入图片描述
  4. 用replace方法,后退不会回到首页。用push可以回来。
  5. 前进和后退,里面数字是前进或者后退的步数。
    在这里插入图片描述
  6. 命名视图
    app.vue页面下面有多个路由视图。通过名字区分。
    在这里插入图片描述
    路由配置,引入组件。
    在这里插入图片描述

主页。
在这里插入图片描述

  1. 重定向。访问/a,跳转到/about。

在这里插入图片描述
还可以设置函数。query里面的内容是about的时候,跳转到about。否则去news页面。
在这里插入图片描述

  1. 别名。这两个路径显示的是同一个页面。别名会显示在路径栏上。
    在这里插入图片描述
  2. 组件传参。
    路由配置,props设置为true。他就会把id传进去。
    在这里插入图片描述
    组件这边要接收id。
    在这里插入图片描述

用函数设置。 return就是我们获取输入,然后传出的值。
在这里插入图片描述
在子组件里面接收。
在这里插入图片描述

  1. 页面都找不大,配置404页面。
    在这里插入图片描述

History模式

  1. 没有#的那种。后端需要配置。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值