Javascript 为什么显示隐藏细节?
为什么它显示隐藏的细节?这个名字是真的Javascript 为什么显示隐藏细节?,javascript,reactjs,Javascript,Reactjs,为什么它显示隐藏的细节?这个名字是真的 let name=true; const template= ( <div> <h1>Visibility Toggle</h1> <button >{name==true ? 'Show details': 'Hide details'}</button> <p></p> </div>
let name=true;
const template= (
<div>
<h1>Visibility Toggle</h1>
<button >{name==true ? 'Show details': 'Hide details'}</button>
<p></p>
</div>
);
const appRoot=document.getElementById('app');
ReactDOM.render(template,appRoot);
让name=true;
常量模板=(
可见性切换
{name==true?'Show details':'Hide details'}
);
const approt=document.getElementById('app');
render(模板,approt);
您是否尝试console.log
name以确保它是真实的。如果它实际上是真的,那么“显示详细信息”也应该显示,在JS中,将事物与true
或false
进行比较是非常危险的。(很多人说使用=
是危险的,应该避免——我不同意,但肯定有一些陷阱需要注意,这是最大的陷阱。)请特别注意,name==true
不测试name
是否为truthy或falsy-要做到这一点,您应该使用更简单的name
作为三元运算符中的测试。我假设这不是完整的示例,并且您的问题发生在逻辑的某个地方。您可以尝试console.log
记录name
的值,并尝试查找罪犯。另外,避免以小写字母开头的组件名称,因为如果不将它们重新绑定到以大写字母开头的变量,就无法在JSX表达式中使用它们。您是在什么样的环境下尝试此操作的?我将其更改为:name?“显示详细信息“:“隐藏详细信息”