我使用以下JSX代码将令牌替换为提示符中的值:
const prompt = '[a]_[b]_[c]'
const tokens = ['[a]','[b]','[c]']
const values = ['A', 'BBB', 'CC']
const promptRes = tokens.reduce( (prevText, curText, i) => {
prevText = prevText.replace(curText, values[i])
}, prompt)
console.log(promptRes) // Expected: 'A_BBB_CC'
但它给了我以下错误:
- prevText = prevText. replace(当前文本,值[i])^类型错误:无法读取未定义的属性(读取"replace")*
初始值(即提示符)似乎无法使用。
请帮助:
1.解释为什么这是一个问题,和/或
1.建议一个不带任何循环的多令牌替换问题的解决方案(注意JSX中不允许循环)
谢谢大家!
1条答案
按热度按时间atmip9wb1#
您可以阅读如何使用
reduce
here