为了账号安全,请及时绑定邮箱和手机立即绑定

如何通过 vue js 中的 slug从我的 json 文件中获取文章内容?

如何通过 vue js 中的 slug从我的 json 文件中获取文章内容?

qq_笑_17 2022-01-07 10:48:06
我index.vue的文章中有链接(在 Nuxt 应用程序中)。当一篇文章被点击时,slug 被添加到 URL 中(这很好用)。单击文章链接时,我不知道如何从 JSON 文件中获取特定文章的内容。更像是我不知道如何在pages/ArticleContent/_id.vue.页面/index.vue<template><div><h1> The Article Hub </h1>    <div class="list_article">        <div v-for="article in article_list" :key="article.title_slug">            <nuxt-link :to="'/ArticleContent/' + article.title_slug">                {{article.article_name}}            </nuxt-link>        </div>    </div></div></template><script>import example from '../assets/example_all_articles.json';export default {    data () {    return {        article_list: example.data.guides,    }    }  }</script>我的 JSON 文件包含如下内容:article_name: Article Aarticle_id: 1title_slug: article-aarticle_content: This is content of article Aarticle_name: Article Barticle_id: 2title_slug: article-barticle_content: This is content of article Barticle_name: Article Carticle_id: 3title_slug: article-c article_content: This is content of article C等等。将不胜感激一些帮助。谢谢!
查看完整描述

1 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

你应该有这样的东西 _id.vue


<template>

  <div>

    <div v-if="article">

      <h1>{{article.title_slug}}</h1>

    </div>

    <div v-else></div>

  </div>

</template>


<script>

import articles_service from '../assets/example_all_articles.json'


export default {

  data() {

    return {

      article_list: articles_service.data.guides,

      article: null

    }

  },

  asyncData({ params }) {

    return {

      id: params.id

    }

  },

  watch: {

    id: {

      immediate: true,

      handler(id) {

        if (id) {

          this.article = this.article_list.find(f => {

            return f.title_slug === this.id

          })

        }

      }

    }

  }

}

</script>

确保它们title_slug在列表中是唯一的。


查看完整回答
反对 回复 2022-01-07
  • 1 回答
  • 0 关注
  • 214 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号