我想通过样式传递参数值来计算宽度。我的代码是
function getValue(value) {
if (value === 12) {
return {
width: '( 20 - value )%',
};
}
return false;
}
,但是宽度不起作用。我是新来的反应。请帮忙。
答案 0 :(得分:2)
您无法计算是否为字符串。引号(initialize: function (AECanvas, options) {
options = options || {}
this.callSuper('initialize', AECanvas, options)
this._AECanvas = AECanvas
},
)使其成为字符串。另外,''
是余数运算符。它得到两个数字的余数。这类似于除法。您可以在MDN上了解有关余数运算符的更多信息
我不知道这与react有什么关系,这更像是普通的javascript。
我认为您可能想要的是
%
您还可以执行以下操作,因为它仅在值为12时返回
function getValue(value) {
if (value !== 12) { return false; }
return {
width: (20 - value)/100,
};
}
此解决方案使用箭头函数,自动返回和三元运算符。您可以在mdn上了解它们
答案 1 :(得分:2)
您需要以下类似的内容。您正在检查一个常数值,因此无需进行算术运算,只需返回8。您可以像下面这样简化函数
function getValue(value) {
// return object for style or undefined for no styling
return value === 12 ? {'width': '8% !important' } : undefined;
}
如果您要保留算术,因为您只想一直进行计算(例如)。这样写出函数的更好方法就是这样。
function getValue(value) {
return { 'width': `${20 - value}% !important` };
}
答案 2 :(得分:1)
尝试一下
宽度:(20-值)+“%”