0

案例场景:我们正在使用 Atlaskit 的 DropDownMenu 组件。菜单的触发器/标题是“交易”,默认情况下,它的颜色是“黑色”。并且有两个选项或 DropDownItems 名为“Count”和“Amount”。

虽然选择了上述任何选项,但触发/标题的彩色将更新为黑色的“蓝色”。

    <DropdownMenu trigger="Transaction">
            
     </DropdownMenu> 

此处必须更新触发器标题颜色。

4

1 回答 1

0

解决方案: 首先,我们确实需要在选择下拉菜单中的任何选项时更新我们的状态。

  const [transactionValue, setTransactionValue] = useState("Count");

 <div style={{ width: 260, paddingLeft: 10 }}>
              { transactionValue === "Count" ?
              <div id="transaction_id_1"  className="span.css-7no60z-ButtonBase">
               <DropdownMenu trigger="Transaction">
              <DropdownItemRadioGroup id="transaction">
                <DropdownItemRadio
                  id="count"
                  onClick={() => setTransactionValue("Count") }
                  defaultSelected
                >
                  Count
                </DropdownItemRadio>
                <DropdownItemRadio
                  id="amount"
                  onClick={() =>  setTransactionValue("Amount")}
                >
                  Amount
                </DropdownItemRadio>
              </DropdownItemRadioGroup>
            </DropdownMenu> 
            </div> : 
            <div id="transaction_id_2"  className="span.css-7no60z-ButtonBase" >
            <DropdownMenu trigger="Transaction">
            <DropdownItemRadioGroup id="transaction">
              <DropdownItemRadio
                id="count"
                onClick={() => setTransactionValue("Count") }
                defaultSelected
              >
                Count
              </DropdownItemRadio>
              <DropdownItemRadio
                id="amount"
                onClick={() =>  setTransactionValue("Amount")}
              >
                Amount
              </DropdownItemRadio>
            </DropdownItemRadioGroup>
          </DropdownMenu> 
          </div>
          }

  </div>

然后将样式文件导入到您的组件类中。

样式文件:

#transaction_id_1 :nth-child(1) span.css-7no60z-ButtonBase   {
    color: #2e2b2b;
    font-weight: bold;
    font-size: 16px;
}

#transaction_id_2 :nth-child(1) span.css-7no60z-ButtonBase   {
    color: #3aa7d9;
    font-weight: bold;
    font-size: 16px;
}

而已。现在您可以看到,在选择“数量”选项时,触发器/标题颜色已更新。

#HappyCoding :咧着嘴笑:

于 2022-02-24T05:08:38.093 回答