Javascript 创建一个函数以使用React Native';标题框';
我正试图从用户那里获得一些输入,以便自动成为标题框。代码在我看来很可靠,但似乎没有给我真正想要的输出。它没有将第一个字母作为大写字母连接起来。这是生成输入标题大小写的代码Javascript 创建一个函数以使用React Native';标题框';,javascript,reactjs,typescript,react-native,title-case,Javascript,Reactjs,Typescript,React Native,Title Case,我正试图从用户那里获得一些输入,以便自动成为标题框。代码在我看来很可靠,但似乎没有给我真正想要的输出。它没有将第一个字母作为大写字母连接起来。这是生成输入标题大小写的代码 export function titleCase(str: string): string { return !str ? "" : str.toLowerCase() .split(" ") .map(function(word: st
export function titleCase(str: string): string {
return !str
? ""
: str.toLowerCase()
.split(" ")
.map(function(word: string): string {
return word && word.length > 0 ? word.replace(word[0], word[0].toUpperCase()) : ""
})
.join(" ")
}
然后我在视图标记中调用它,就像这样
<Text style={styles.providerNameTxt}>
{Scenes.Detail.titleCase(providerName)}
</Text>
<Text style={styles.providerSpecialtyTxt}>
{Scenes.Detail.titleCase(providerSpecialty)}
</Text>
{Scenes.Detail.titleCase(提供者名称)}
{Scenes.Detail.titleCase(ProviderSpeciality)}
这不管用吗?当用户转到输入(providerName)时,输入不会自动将第一个字母大写。我不知道为什么。该文件名为detail.ts,位于util/scenes文件夹下。所以使用“Scenes.detail”应该调用函数。除非我的功能是错误的。
此外,在scenes/detail.ts中,titleCase有一个导出默认值。它之前不在那里,所以我添加了它,但它仍然不能像我希望的那样工作。试试看
str.replace(/\b(\w)/g,k=>k.toUpperCase())
在任何字符串str
上,用空格分隔单词。尝试
export const toTitleCase = (str) => {
return str.replace(
/\w\S*/g,
(txt) => {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
}
);
}
str.replace(/\b(\w)/g,k=>k.toUpperCase())
在任何字符串
str
上,单词之间用空格分隔。在场景中访问标题库
是没有意义的。详细信息
。您能否显示标题库
的导入语句?在场景中访问标题库
是没有意义的。详细信息
。你能展示你对标题库的导入声明吗?请解释你的答案,以及它是如何解决问题的。请解释你的答案,以及它是如何解决问题的。
export const toTitleCase = (str) => {
return str.replace(
/\w\S*/g,
(txt) => {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
}
);
}