javascript - 根据 json 数据生成字段 - 如何解决选择/复选框
问题描述
我想基于 json 文件在 bootstrap-vue 代码中生成输入字段。
我在该数组上循环,我的b-form-input
字段工作得很好——问题是我还需要一些选择字段b-form-select
和复选框b-form-checkbox
。
如果我的 json 中有任何选择或复选框,我该如何解决这个问题以及如何签入我的模板?
因为我想拥有多个 json 文件,而这些都是不同的..
谢谢你!
<template>
<div v-for="item in testJSON" :key="item">
<label class="mt-2">{{item.label}}</label>
<b-form-input :type="item.type" v-model="item.value"></b-form-input>
<b-form-select :options="item.options"></b-form-select>
</div>
</template>
我的脚本:
<script>
import test from './json/test.json'
export default {
name: 'Test',
data() {
return {
testJSON: test,
}
}
}
</script>
我导入的 json:
[
{
"number": "1111",
"key": "key1",
"label": "Input 1",
"type": "text",
"value": ""
},
{
"number": "2222",
"key": "key2",
"label": "Input 2",
"type": "text",
"value": ""
},
{
"number": "3333",
"key": "key3",
"label": "Input 3",
"type": "number",
"value": ""
}
{
"number": "4444",
"key": "key4",
"label": "Select Input",
"options": [
{ "text": "Value 1", "value": "value1" },
{ "text": "Value 2", "value": "value2" },
{ "text": "Value 3", "value": "value3" },
{ "text": "Value 4", "value": "value" }
],
"value": ""
}
]
解决方案
我认为要么
A:你需要options
在每个对象中有一个数组(即使它是空的)。
或者
B:如果选项存在,您需要检查您的模板
<b-form-select v-if="item.options" :options="item.options"></b-form-select>
我猜你的复选框也有类似的想法,因为你实际上没有为此提供任何代码。
推荐阅读
- node.js - 在 fsevents 的 npm 安装期间 nody-gyp 重建的目的是什么?
- php - PHP - 输出包含特定文本标记的数组值
- javascript - 将二维数组转换为分配的关键对象
- reactjs - 是什么导致输入框文本在 Reconciliation 的 ReactJS 页面示例中没有重新排序?
- python - 从 Pandas 中的偏差数据集创建非偏差数据框
- python - 如何将 stdout.read() 保存在 csv 文件中?
- python-3.x - 如何创建随机分布?
- pandas - 基于pandas python中硬编码值的条件相乘
- javascript - 为 Lambda 函数启用 CORS 后被 Chrome 中的 CORS 策略阻止?
- laravel - 为什么我在帖子中收到错误消息?拉拉维尔