kazupon / vue-i18n

:globe_with_meridians: Internationalization plugin for Vue.js

Home Page:https://kazupon.github.io/vue-i18n/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How to use component interpolation for array (multiple) translations

dword-design opened this issue · comments

Clear and concise description of the problem

I have a list of paragraphs that I want to translate and render each one with a <p>. But some have a link in it that I want to inject via component interpolation like this:

// en.js
{
  paragraphs: [
    'foo bar {link}',
    'another paragraph',
  ],
}
// index.vue
<!-- how to render this for each paragraph -->
<i18n-t tag="p" keypath="paragraphs">
  <template #link><a href="link" /></template>
</i18n-t>

It is possible to get the array of translations via $tm, but how to interpolate each translation?

Suggested solution

Maybe there is already a solution that I don't know of. Can I maybe iterate over $tm and interpolate each translated string individually?

Alternative

No response

Additional context

No response

Validations