Javascript React 中的内联样式 - null、undefined、empty-Object、inherit 或 none?
Javascript inline style in React - null, undefined, empty-Object, inherit, or none?
在 React 中使用哪个最合适,为什么?
*注意:示例在 React jsx-syntax 中;
<div style={ condition ? {backgroundColor:'#d6f9dd'} : {} }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : undefined }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : null }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : 'inherit' }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : 'none' }>
就个人而言,如果我需要覆盖由单独的库附加的 css 属性,我只会使用样式 属性。
在您提供的选项中,唯一有效的选项如下:
<div style={ condition ? {backgroundColor:'#d6f9dd'} : {} } />
<div style={ condition ? {backgroundColor:'#d6f9dd'} : undefined } />
React 期望样式 属性 为未定义或对象。
最重要的是,我会有条件地应用 css 属性本身而不是整个样式对象。
像这样:
<div style={{ backgroundColor: condition ? '#d6f9dd' : undefined }} />
那样的话,如果我需要应用多个样式属性,但其中一个取决于条件,即使条件不成立,另一个仍然可以应用。将 属性 设置为 undefined 相当于根本没有将它包含在样式对象中。
不要使用空对象。它们可以 return 真实,并且具有属性。
console.log(typeof {}.hasOwnProperty); // function
这可能会导致后续问题。如果想要内联样式,最好的选择是使用 undefined imo
在 React 中使用哪个最合适,为什么?
*注意:示例在 React jsx-syntax 中;
<div style={ condition ? {backgroundColor:'#d6f9dd'} : {} }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : undefined }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : null }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : 'inherit' }>
<div style={ condition ? {backgroundColor:'#d6f9dd'} : 'none' }>
就个人而言,如果我需要覆盖由单独的库附加的 css 属性,我只会使用样式 属性。
在您提供的选项中,唯一有效的选项如下:
<div style={ condition ? {backgroundColor:'#d6f9dd'} : {} } />
<div style={ condition ? {backgroundColor:'#d6f9dd'} : undefined } />
React 期望样式 属性 为未定义或对象。
最重要的是,我会有条件地应用 css 属性本身而不是整个样式对象。
像这样:
<div style={{ backgroundColor: condition ? '#d6f9dd' : undefined }} />
那样的话,如果我需要应用多个样式属性,但其中一个取决于条件,即使条件不成立,另一个仍然可以应用。将 属性 设置为 undefined 相当于根本没有将它包含在样式对象中。
不要使用空对象。它们可以 return 真实,并且具有属性。
console.log(typeof {}.hasOwnProperty); // function
这可能会导致后续问题。如果想要内联样式,最好的选择是使用 undefined imo