javascript 如何正确使用Laravel本地化语言字符串作为vue.js脚本数据属性

v2g6jxz6  于 2022-12-17  发布在  Java
关注(0)|答案(1)|浏览(92)

我在vue.js脚本(vue.js组件脚本2片段)中有一个sweetalert,它可以正常使用两个Laravel本地化语言字符串。现在我尝试在另一个vue.js组件脚本中使用相同的语言字符串作为数据属性。
问题:它不接受以下sides.name属性。

vue.js组件脚本1片段

<script>
  data: () => ({ 
            sides: [
                {
                    id: 1,
                    name: this.__('offers.front'),
                },
                {
                    id: 2,
                    name: this.__('offers.back'),
                }
            ],
    }),
</script>

控制台显示以下错误消息:
应用程序js:247950 [Vue警告]:数据错误():“类型错误:无法读取未定义的属性(阅读'__')”
下面是sweetalert2 Swal的代码片段,它工作正常:

vue.js组件脚本2代码段

<script>
                Swal.fire(
                    this.__('offers.front'),
                    this.__('offers.back'),
                    'success'
                )
</script>

我试过不带“this”,但模板中的输出显然变成了“offers.front”。

g2ieeal7

g2ieeal71#

<script>
  data: () => ({ // WITHOUT CONTEXT
            sides: [
                {
                    id: 1,
                    name: this.__('offers.front'), // THIS ERROR
                },
                {
                    id: 2,
                    name: this.__('offers.back'),
                }
            ],
    }),
</script>

请更新

<script>
  data() {
    return { 
            sides: [
                {
                    id: 1,
                    name: this.__('offers.front'),
                }
            ]
    }
  }
</script>

相关问题