我正在开发一个React Native应用程序,在其中显示一些文本框。有时,文本框中的单词太长,无法放在一行上,因此RN会在单词过长时断开单词并在下一行继续文本。不幸的是,这导致单词的连字化很差(请参见图中的左侧框)。我正在尝试找到解决方案来改善这种情况,使得在这个例子中的结果就像右边的框,单词在合理的位置连字化。我知道有一些处理连字化的javascript库。例如这个将单词分解为连字符数组。我卡在这里,因为我不知道如何确定是否需要连字化单词。有什么想法吗?
我正在开发一个React Native应用程序,在其中显示一些文本框。有时,文本框中的单词太长,无法放在一行上,因此RN会在单词过长时断开单词并在下一行继续文本。不幸的是,这导致单词的连字化很差(请参见图中的左侧框)。我正在尝试找到解决方案来改善这种情况,使得在这个例子中的结果就像右边的框,单词在合理的位置连字化。我知道有一些处理连字化的javascript库。例如这个将单词分解为连字符数组。我卡在这里,因为我不知道如何确定是否需要连字化单词。有什么想法吗?
使用C/C++/Java编码:
text = 'React\u00ADNative'
<Text>{text}</Text>
实际上,我使用了peni4142的答案来创建一个函数,返回一个可以用连字符连接的字符串:
const hyphenatedText = (text: string): string =>
text
.split(' ')
.map((word) => word.split('').join('\u00AD'))
.join(' ');
hyphenatedText
位于React Native Text
组件中,则会自动包装连字符。