1

我目前正在使用 vue-i18n 进行国际化,但在本主题中遇到了列表问题。可以使用永久导航栏上的下拉菜单更改语言。有一个组件 A 和一个子组件 B。在这个子组件中有两个列表,通过以下方式填充:

<select id="element1" class="ui dropdown" v-model="application.datatable">
    <option value="">... ... ...</option>     
    <option v-for="i in tableRows"  :value="i.id">
        <p>
            {{$t(i.element.name)}}
        </p>
    </option>
</select>

在这里我遇到了问题,{{$t(i.element.name)}} 被正确翻译,但在第一次初始化后不会改变。因此,如果我将语言从英语更改为德语,所有其他标签和字符串都会更改,但列表仍然是英语(Wochentag:|星期一|星期二|...)

为此,我需要一种重新呈现列表的可能性(可能通过 id,但在 jQuery 中没有找到任何东西)或一种在每次语言更改时重新呈现列表的方法。

有人对此有想法吗?非常感谢!广告病毒

4

1 回答 1

1
  1. 将您的选择绑定到$i18n.localehtml 中的 ( )
<select name="lang" v-model="$i18n.locale">
    <option v-for="lang in langs" :value="lang">
        @{{ $t('general.' + lang) }}
    </option>
</select>

注意:大括号前的@符号是因为此代码在我的.blade.php文件中。如果您在.vue文件中,则需要注意。

于 2018-11-25T06:33:03.323 回答