vue.js - VUEJS - V-if 检查 JSON 对象是否为空
问题描述
这是我们得到的 JSON 响应。缺少一些非常简单的 VUEJS 逻辑来满足我们的要求。
如果 JSON 对象为空,我们需要相应地显示 DIV。但是,当我尝试使用长度功能时,它不起作用。任何人都可以帮助解决这个问题吗?
{
"moduleInfo": {
"moduleType": "LONG"
},
"FlightElements": {
"modulenames": {
"Ele1": "Flight Parts",
"Ele2": "Flight Wings"
}
}
}
<!-- If moduleType is LONG and "Modulesnames" are available -->
<div class="display-container" v-if='moduleType=="LONG" && !FlightElements.modulenames.length'>
<p>Display Modules</p>
<div>
<!-- If moduleType is LONG and "Modulesnames" is empty -->
<div class="display-container" v-if='moduleType=="LONG" && FlightElements.modulenames.length'>
<p>Display Empty Modules</p>
<div>
解决方案
尝试检查对象属性(对象)是否为空:
new Vue({
el: "#demo",
data() {
return {
mod:{
"moduleInfo": {"moduleType": "LONG"},
"FlightElements": {
"modulenames": {"Ele1": "Flight Parts","Ele2": "Flight Wings"}
}
},
mod1:{
"moduleInfo": {"moduleType": "LONG"},
"FlightElements": {
"modulenames": {}
}
}
}
}
})
Object.entries(objectToCheck).length === 0
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="demo" style="display: flex; gap: 1em;">
<div style="background: green;">
<div class="display-container" v-if='mod.moduleInfo.moduleType=="LONG" && Object.entries(mod.FlightElements.modulenames).length !== 0'>
<p>Display Modules</p>
</div>
<div class="display-container" v-if='mod.moduleInfo.moduleType=="LONG" && Object.entries(mod.FlightElements.modulenames).length === 0 '>
<p>Display Empty Modules</p>
</div>
</div>
<div style="background: red;">
<div class="display-container" v-if='mod1.moduleInfo.moduleType=="LONG" && Object.entries(mod1.FlightElements.modulenames).length !== 0'>
<p>Display Modules</p>
</div>
<div class="display-container" v-if='mod1.moduleInfo.moduleType=="LONG" && Object.entries(mod1.FlightElements.modulenames).length === 0 '>
<p>Display Empty Modules</p>
</div>
</div>
</div>
推荐阅读
- ruby-on-rails - 如何使用 Rspec + Capybara 和 dockerized Selenium Standalone Chrome 正确配置 Rails 系统测试?
- local-storage - 无法在已安装的 SAN 存储上显示文件
- php - 如何在 PHP 中的 html 代码上删除 javascript 标签 'type="text/javascrip"'
- sql - 将字符串转换为地理类型
- mysql - 在 MySQL 中完全锁定 root
- python - 为数据框中的每个组查找不同的百分位数
- c# - 自定义 SecurityTokenValidator 有效但仍未经授权
- reactjs - 反应:onClick替换父组件
- javascript - 从 Lambda 调用 Rest API(JS;Web 控制台)
- google-bigquery - 我想从重复字段的大查询中获取数据到重复