Saya perlu menggabungkan kunci json untuk menampilkan konten berdasarkan bahasa yang dipilih saat ini. Di API saya mendapatkan respons dan bahasa saat ini dipilih. Responnya seperti di bawah ini

{
  lang : "en"
  heading_ar: "قابل وتناول واستمتع بالاختبار الحقيقي"
  heading_en: "Meet, Eat & Enjoy the true test"
  description_ar: "<p>هناك حقيقة مثبتة منذ زمن طويل وهي أن المحتوى المقروء لصفحة</p>"
  description_en: "<p>It is a long established fact that a</p>"
  id: 1
}

Dalam template saya harus menampilkan isinya. Tapi saya tidak bisa menggabungkan lang di heading . Saya mencoba berbagai cara tetapi tidak ada yang berhasil.

<template>
<h1 class="banner-title">{{banner.home.heading_+banner.home.lang}}</h1>
</template>

Terima kasih

2
matheen ulla 27 November 2021, 11:39

2 jawaban

Jawaban Terbaik
<template>
<h1 class="banner-title">{{banner.home.heading_en}}{{banner.home.lang}}</h1>
</template>

EDIT: setelah mengklarifikasi persyaratan

<template>
    <h1 class="banner-title">{{computedHeading}}</h1>
</template>

Dan ke skrip Anda, tambahkan properti yang dihitung

computed: {
// a computed getter
  computedHeading: function () {
    if(this.banner.home.lang == "en"){
      return this.banner.home.heading_en
    }else{
      return this.banner.home.heading_ar
    } 
}

}

EDIT: setelah OP mengatakan dia memiliki banyak optimasi bahasa

Perhatikan bahwa ini tidak perlu menjadi properti yang dihitung, jika data Anda tidak berubah, setel ini sekali saja

computed: {
// a computed getter
  computedHeading: function () {
        let prefix = "heading_"
        let headingPath = prefix+this.banner.home.lang
        return this.banner.home[headingPath]
  }
}
1
Vojin Purić 27 November 2021, 12:55
Bagaimana ini akan bekerja? Saya ingin menampilkan heading_en atau heading_ar bukan keduanya
 – 
matheen ulla
27 November 2021, 11:56
Itu bukan pertanyaan Anda, saya akan mengedit untuk membantu Anda dengan itu juga
 – 
Vojin Purić
27 November 2021, 12:09
Saya perlu menggabungkan kunci json. berdasarkan itu saya harus mengambil nilainya
 – 
matheen ulla
27 November 2021, 12:12
Properti yang dihitung bekerja dengan baik. tetapi memiliki banyak bahasa sehingga setiap bahasa saya harus memberikan syarat.
 – 
matheen ulla
27 November 2021, 12:50
Semoga hasil edit baru ini menjawab pertanyaan Anda. Harap di masa mendatang, beri tahu semua persyaratan/skenario Anda terlebih dahulu saat mengajukan pertanyaan
 – 
Vojin Purić
27 November 2021, 12:57
With string interpolation {{`${banner.home.heading_} some text ${banner.home.lang}`}}
0
mianbato 27 November 2021, 12:22
Ini tidak bekerja.
 – 
matheen ulla
27 November 2021, 12:08
Saya punya masalah untuk keluar dari teks hahaha
 – 
mianbato
27 November 2021, 12:12
Saya mencoba seperti ini untuk {{${banner.home.heading_+banner.home.lang}}} tetapi tidak berhasil
 – 
matheen ulla
27 November 2021, 12:15
${variable_or_function} teks statis ${other_variable_or_function} semuanya di antara tanda kutip itu
 – 
mianbato
27 November 2021, 12:18