You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TSX中使用lodash结合模板字符串传组件header属性失效如何解决

问题根源

代码无法运行和lodash无关,是JSX的属性传值写法错误:JSX中给组件props传递动态JavaScript表达式(包括变量、函数调用、模板字符串、运算结果等)时,必须用大括号{}将表达式包裹,否则JSX会把等于号后的值直接当成普通静态字符串解析,不会执行模板字符串的插值逻辑。
你当前的写法里,反引号包裹的模板字符串直接跟在header=后面,没有加大括号,${_.startCase(type)}不会被解析执行,只会作为普通文本传给header属性,自然达不到预期效果。

修正后代码
<H
  header={`${_.startCase(type)} SomeString`}
  subheader="Lorem ipsum do eiusmod"
/>
写法规则说明
  • 给props传递静态固定字符串时,可以直接用双引号包裹写在属性后,比如示例中的subheader="Lorem ipsum do eiusmod"就是合法写法
  • 只要属性值需要动态计算(调用方法、拼接变量、使用模板字符串、做逻辑判断等),必须在属性等于号后先写大括号,再把JS表达式写在大括号内部,JSX才会正确解析执行表达式的结果作为prop值

内容的提问来源于stack exchange,提问作者user19251203

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 15:24:19