javascript - 根据对象属性禁用按钮

标签 javascript reactjs

每当我的对象属性之一设置为 true 时,我想在我的组件中禁用我的按钮。

      className="button save"
      disabled={this.props.validationObject.reduce(
        (sum, next) => sum && next,
        true
      )}
    >

这是我的验证对象

validationObject: {
    Title: true,
    IBCSegmentId: true,
    CountryId: true,
    localCOMPageTitle: true
  }

请注意,我的 disbale 只需要 1 true 就可以禁用,这可能吗?我试过“减少”但没有用。我试图复制他们在这里所做的事情

find sum of Boolean values JavaScript object array

最佳答案

您可以使用 Object.values() 来减少值,而且,您需要使用 or (||) 操作来减少,以便它只是 false如果它们都是假的。

var validationObject = {
    Title: false,
    IBCSegmentId: false,
    CountryId: false,
    localCOMPageTitle: false
  };

var shouldDisable = Object.values(validationObject).reduce(
       (sum, next) =>sum || next
      );
   
console.log(shouldDisable);


validationObject = {
    Title: true,
    IBCSegmentId: false,
    CountryId: false,
    localCOMPageTitle: false
  };

shouldDisable = Object.values(validationObject).reduce(
       (sum, next) =>sum || next
      );
console.log(shouldDisable);

关于javascript - 根据对象属性禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52358850/

相关文章:

javascript - React useEffect 钩子(Hook)引用了错误的值

reactjs - 导航到某个路径后清除位置状态

reactjs - React - Jest - 测试 preventDefault Action

javascript - React Js 上的条件 jsx

javascript - 如果已选择或打开 Div,如何停止幻灯片效果

javascript - 将内联 block 元素与 td 内的链接居中

javascript - 如何使用 .querySelectorAll 通过 javascript 创建打字机效果?

javascript - 理解 React 高阶组件

javascript - 使用 jquery,如何检查元素是否可见?

php - getJSON 或 PHP 的问题