So übersetzen Sie Komponentenattribute/-eigenschaften mit Vue I18n
P粉416996828
P粉416996828 2023-11-07 12:47:10
0
2
526

Wie übersetze ich eingehende Eigenschaften/Eigenschaften einer Komponente? Ich habe beispielsweise eine Kartenkomponente mit definierten Titel- und Beschreibungseigenschaften.


<!-- my-card  组件 -->
    <template>
      <div>
        <h2>{{title}}</h2>
        <span>{{description}}</span>
      </div>
    </template>

    <script>
      export default {
        props: {
          title: String,
          descritpion: String
        }
      }
    </script>


Dann verwenden Sie die My-Card-Komponente auf einer anderen Seite/Komponente wie unten


  

  <template>
      <div>

        <header>页面头部</header>
        <my-card :title="最好的卡片标题" :description="最好的描述" />
        <footer>页面底部</footer>
      </div>
    </template>


Wie verwende ich Vue I18n zum Übersetzen von Komponenteneigenschaften?


  

  <template>
      <div>

        <header>页面头部</header>
        <my-card :title="{{ $t('myCard.title')}}" :description="{{$t('myCard.description')}}" />
        <footer>页面底部</footer>
      </div>
    </template>


Ich kriege die Übersetzung der eingehenden Attribute anscheinend nicht hin.

P.S. Ich weiß, dass ich Übersetzungen hinzufügen kann, wenn die My-Card-Komponente definiert ist, aber das Problem hierbei ist, dass die Komponente eine Drittanbieterkomponente aus der NPM-Bibliothek ist.

Ich weiß, dass einige Pakete in React.js über diese Funktionalität verfügen.

P粉416996828
P粉416996828

Antworte allen(2)
P粉447002127

您可以在组件属性中使用I18n翻译,如下所示。

<my-card 
:title="$t('myCard.title')"
:description="$t('myCard.description')" 
/>
P粉447785031

只需绑定翻译,而不使用{{}}

<my-card :title="$t('myCard.title')" :description="$t('myCard.description')" />
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!