在 Typescript 上使用带有本地参数的 toLocaleLowerCase 方法

Posted

技术标签:

【中文标题】在 Typescript 上使用带有本地参数的 toLocaleLowerCase 方法【英文标题】:Use toLocaleLowerCase method with local parameter on Typescript 【发布时间】:2018-05-04 07:38:24 【问题描述】:

我有一个关于String.prototype.toLocaleLowerCase() 的问题;

我想将 toLocaleLowerCase() 与 here 等语言环境参数一起使用

但我收到此错误。

lib.es5.d.ts

你能帮帮我吗?

包和系统信息:

cli 包:(C:\Users\Ahmet\AppData\Roaming\npm\node_modules)

@ionic/cli-utils  : 1.18.0
ionic (Ionic CLI) : 3.18.0

全局包:

cordova (Cordova CLI) : 7.1.0

本地包:

@ionic/app-scripts : 3.0.0-201710070411
Cordova Platforms  : android 6.2.3
Ionic Framework    : ionic-angular 3.7.1

系统:

Node : v8.7.0
npm  : 5.5.1
OS   : Windows 10

【问题讨论】:

【参考方案1】:

locale 参数仍处于草稿模式:https://developer.mozilla.org/en-US/docs/Web/javascript/Reference/Global_Objects/String/toLocaleLowerCase

热修复:

使用类型断言(beware):

('some string' as any).toLocaleLowerCase('tr');

正确修复

等到该功能标准化,因为它现在可能无法跨浏览器运行。

【讨论】:

这是否仍处于草稿模式,链接说所有浏览器都支持它,但是当我添加语言环境参数时我仍然遇到同样的错误,即使类型定义说它需要一个可选参数但编译失败

以上是关于在 Typescript 上使用带有本地参数的 toLocaleLowerCase 方法的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript 入门14.泛型

TypeScript 类型挑战 Medium

如何在带有 React 的 Typescript/JSX 中使用带有箭头函数的泛型?

Typescript杂谈

带有本地护照的 TypeScript:不能将“new”与类型缺少调用或构造签名的表达式一起使用

如何在 Typescript 中正确使用 React.lazy() 来导入带有泛型类型参数的反应组件?