所以我有一個字串被發送到一個類,該類被 \n 分割為格式。我想知道是否可以在字串的特定單詞下劃線以使其看起來更好?
目前這是正在通過的
"Name : Jackson
\nLabel: Movie
\nDirector:
\nGenre: Action
\nActors: Will, Jack, Carrie
\nMetascore: 90/100
\nRevenue: 87.5M
\nRuntime: 100 min
\nRating: 9/10"
我希望 \n 之后的單詞直到 ":" 都帶有下劃線,但我所看到的只是使整個字串帶有下劃線。
這是我目前決議字串的方式。
const newText = text.split('\n').map(str => <p>{str}</p>);
我的猜測是將 str 再次拆分為 : 在 .map 中并使用
<Text style={styles.bold}> </Text>來設定它?
uj5u.com熱心網友回復:
您可以按 分割文本的每一行:,如下所示:
const string = `
Name: Jackson
Label: Movie
Director:
Genre: Action
Actors: Will, Jack, Carrie
Metascore: 90/100
Revenue: 87.5M
Runtime: 100 min
Rating: 9/10
`;
function MyList() {
const strings = string.split('\n').map((str) => {
const [label, value] = str.split(':');
return (
<div>
<u>{label}</u>:<p>{value}</p>
</div>
);
});
return strings;
}
<u> 代表html中的下劃線。
您還可以className向label零件周圍的標簽添加屬性并使用text-decoration: underline;
uj5u.com熱心網友回復:
在 map 函式中拆分字串,將其包裝在 span 標簽中并text-decoration: underline;用于 css。
uj5u.com熱心網友回復:
試試text.split(/[\n:]/)。
之后 - 將每個不均勻的元素放入一個標簽中。
當然,只有在文本中沒有其他冒號或新行時它才會起作用。
const str = "Name : Jackson\nLabel: Movie\nDirector: \nGenre: Action\nActors: Will, Jack, Carrie\nMetascore: 90/100\nRevenue: 87.5M\nRuntime: 100 min\nRating: 9/10"
console.log(str.split(/\s?[\n:]\s?/).map((s, i) => i % 2 === 0 ? ('<u>' s '</u>:') : (' ' s '\n')).join(''))
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/373327.html
標籤:javascript 反应
