• nuxt 获取数据


    asyncData

    asyncData钩子只能放在页面组件上,asyncData无法访问组件实例 ( this)
    Nuxt.js 会自动将返回的对象与组件数据进行浅合并

    <template>
      <div>
        <h1>{{ detail.title }}</h1>
        <p>{{ detail.description }}</p>
      </div>
    </template>
    
    <script>
    export default {
      async asyncData({ $axios, route }) {
      //拿到路由信息
        const res = await $axios.$get(`/url/${route.params.id}`)
        return res
      },
      data() {
        return {
          detail: {},
        }
      },
    }
    </script>
    

    fetch

    fetch钩子可以放在任何组件上

    <template>
      <div>
        <h1>{{ detail.title }}</h1>
        <p>{{ detail.description }}</p>
      </div>
    </template>
    <script>
    export default {
      data() {
        return {
          detail: {},
        }
      },
      async fetch() {
        const res = await this.$axios.$get(`/url/${this.$route.params.id}`)
        this.detail = res
      },
    }
    </script>
    

    监听路由字符串的更改

    <template>
      <div>
        <h1>{{ detail.title }}</h1>
        <p>{{ detail.description }}</p>
      </div>
    </template>
    <script>
    export default {
      data() {
        return {
          detail: {},
        }
      },
     watch: {
        '$route.query': '$fetch'
      },
      async fetch() {
        const res = await this.$axios.$get(`/url/${this.$route.params.id}`)
        this.detail = res
      },
    }
    </script>
    
  • 相关阅读:
    ES5新特性:理解 Array 中增强的 9 个 API
    ios
    Jquery异步 Deferred Object
    ES5中新增的Array方法详细说明
    Chart
    Angular常用语句
    vticker.js--垂直滚动插件
    <css系列>之css--float总结
    理解boot.img与静态分析Android/linux内核
    理解竞争条件( Race condition)漏洞
  • 原文地址:https://www.cnblogs.com/heihei-haha/p/14898284.html
Copyright © 2020-2023  润新知