我正在尝试在JSX表达式中连接字符串和HTML,但我似乎无法正确地执行此操作。我的渲染函数中的代码如下所示:
<span>
{'preferred string' || `Other string ${<a target="_blank" href={someVariable}>text inside link</a>}`}
</span>
我想要渲染的是:“链接中的其他字符串文本”
它实际呈现的是“其他字符串[object Object]”
我尝试了一些不同的策略,但没有运气。非常感谢任何建议。
答案 0 :(得分:2)
你想要的东西是:
<span>
{'preferred string' || <p>Other string <a target="_blank" href={variable}>text inside</a></p>}
</span>
关键是添加了段落标签。在你的代码中,React正在努力同时解释多种不同的语言。
请注意,此解决方案与您提供的代码类似,只会显示第二个结果,如果&#39;首选字符串&#39;是空的或null,并且它是硬编码的,有一些值,所以or语句的后半部分永远不会显示。
编辑:如果您的字符串实际上是变量,那么您需要再次退出其他字符串&#39;像这样:
<span>
{ stringVariable || <p>{otherStringVariable}<a target="_blank" href={variable}>{insideTextVariable}</a></p> }
</span>
答案 1 :(得分:0)
如果你只想用标签连接字符串,你可以试试这个简单的方法:
double asc(int n,char tip,...)
{
va_list va;
va_start(va,tip);
va_list var;
va_start(va,tip);
while(--n)
{
if(tip=='d')
{
int va1=va_arg(va,int);
if( va>va1)
return 1;
else
return 0;
}
else
if(tip=='f')
{
double va2=va_arg(va,double);
if(va>va2)
return 1;
else
return 0;
}
}
return 0;
}
int main(int argc, char const *argv[])
{
asc(3,'d',-1,7,9);
return 0;
}
或者,像这样:
<>
preferred string || Other string <a target="_blank" href={someVariable}>text inside link</a>
</>