首页 > 解决方案 > 你能在a里面做一个条件吗

Javascript中的元素?

问题描述

我试图为此寻找答案。但我想在这个返回语句中做一个条件:

document.getElementById('bookList').innerHTML = data.map(item => {
  return `<div>
    <div>Title: ${item.title}</div>
    <div>Author: ${item.author}</div>
    <div>Pages: ${item.pages}</div>
    if (fields.checkbox.checked) {
      console.log("hello")
    } else {
      console.log("not logged")
    }
    <button>Remove</button>
  </div>`

})

运气不好,因为它返回字符串,因为它不是 if/else 语句。无论如何,即使它是一个 div,你也可以让它成为一个 if/else 语句?

标签: javascript

解决方案


您可以ternary在模板文字 ${} 中使用运算符

document.getElementById('bookList').innerHTML = data.map(item => {
  return `<div>
    <div>Title: ${item.title}</div>
    <div>Author: ${item.author}</div>
    <div>Pages: ${item.pages}</div>
    ${fields.checkbox.checked ? console.log("hello") : console.log("not logged")}
    <button>Remove</button>
  </div>`

})


推荐阅读