首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >参数'locale‘隐式具有’任意‘类型。

参数'locale‘隐式具有’任意‘类型。
EN

Stack Overflow用户
提问于 2022-04-03 20:26:48
回答 1查看 202关注 0票数 0

使用i18n,我正在翻译一个带有类型记录的Vue3项目。我只需要改变地区按钮为我工作,但我不知道如何做,它一直给问题标题错误。有人知道怎么解决吗?下面是我的代码:

代码语言:javascript
复制
<template>
   <div> 
       <span @click="changeLocale('pt-br')" class="flag-icon flag-icon-br m-2"></span>
       <span @click="changeLocale('en-uw')" class="flag-icon flag-icon-us m-2"></span>
       <span @click="changeLocale('es-es')" class="flag-icon flag-icon-es m-2"></span>
   </div>
</template>

<script setup lang = "ts">

export default {
   methods: {
       changeLocale(locale){
           this.$root.$i18n.locale = locale;
       }
   }
}
</script>

<style scoped>

.m-2{
   margin: 2px;
} 

</style>
EN

回答 1

Stack Overflow用户

发布于 2022-04-08 10:35:23

由于没有提到此错误的行,所以假设错误来自函数的类型检查。您的TSConfig设置为不允许隐式任何,但尚未声明区域设置的类型参数。

这应改为:

代码语言:javascript
复制
changeLocale(locale: string){
    this.$root.$i18n.locale = locale;
}

还值得一提的是,您已经声明了纯安装组合API,因此不需要执行导出默认值{.}。

这可以写成:

代码语言:javascript
复制
<script setup lang="ts">
const changeLocale = (locale: string) => {
    this.$root.$i18n.locale = locale;
}
</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71729595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档