0

Laravel 5.5 プロジェクトの場合、vue-i18n プラグインの「単一ファイル コンポーネント」を使用したいと考えています。ドキュメンテーション。それは簡単に思えますが、私はそれを機能させることができません。

app.js

import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
const i18n = new VueI18n({
    locale: 'en',
    messages:     {
        "en": {
            "word1": "hello world!"
        }
    }
})
Vue.component('test', require('./components/test.vue'));
const app = new Vue({ i18n, el: '#apps'});

コンポーネント/test.vue

<template>
    {{ $t('word1') }}
    {{ $t('word2') }}
</template>

<i18n>
    {
    "en": {
    "word2": "does this work?"
    }
    }
</i18n>

<script>
    export default {
        name: "test"

        data() {
            return {
                locale: 'en'
            }
        },

        mounted() {},

        watch: {
            locale (val) {
                this.$i18n.locale = val
            }
        }
    }
</script>

word1 は置換されていますが、word2 は置換されていません。vue ファイルの i18n タグ間に不適切な構文を配置しても、ファイルのコンパイル中にエラーは発生しません ( npm run dev)。私が欠けているので、これは理にかなっています:

ドキュメントから取得

module.exports = {
  // ...
  module: {
    rules: [
     ...

これは に入るはずWebpack configurationです。しかし、このファイルはlaravelのどこにありますか? 私が見つけることができるのはwebpack.mix.jsだけですが、このコードをそこに配置してもあまり効果がありません...また、それを作成してもうまくいきませmix.module.exportsん。検索するとこのトピックにたどり着きましたが、彼が私と同じことを尋ねているかどうかはわかりません。

問題: i18n タグが読み込まれていません。解決策は、ドキュメントからコードを追加することです。

私の質問:このコードをどこに追加しますか?

4

1 に答える 1