javascript - 如果 React 中的变量 == 某物,如何将类分配给元素?

标签 javascript html reactjs

我是 React 的新手,之前经常使用 Angular。 在 Angular 中,根据这样的变量分配一些类是尽可能简单的:

<p ng-class="{warning: warningLevel==3, critical: warningLevel==5}">Mars attacks!</p>

我如何使用 React 在模板中做类似的事情?

最佳答案

classSet 的替代方法通常是使用简单的对象查找。

var levelToClass = {
  "3": "warning",
  "5": "critical"
};

// ...
render: function(){
  var level = levelToClass[this.props.warningLevel] || "";
  return <p className={"message " + level}>Test</p>
}

或者在某些情况下是三元的:

render: function(){
  var level = this.props.warningLevel === 3 ? "warning"
            : this.props.warningLevel === 5 ? "critical"
            : "";
  return <p className={"message " + level}>Test</p>
}

关于javascript - 如果 React 中的变量 == 某物,如何将类分配给元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26165810/

相关文章:

html - 为什么我的日历图标没有出现在表格单元格中?

javascript - 在 JavaScript 中复制数组变量?

javascript - Angular .js : model update doesn't trigger view update

javascript - 从 HTML 中的另一个脚本调用变量

javascript - 如何使用来自 javascript 的 classList.contains 获取 bootstrap 下拉菜单中的 li 类

reactjs - react 流 : Cannot resolve module react-native

javascript - react 更新问题

javascript - 如何在 Node js 应用程序中安装和管理 Windows 服务?

javascript - 通过 Javascript 将 PHP 数组传递给另一个 PHP 脚本

reactjs - 如何在条件下激活按钮