<div v-for="(item,index) in dataall" :key="index" > <el-form-item :label="dataall[index].name" :prop="dataall[index].id"> <el-input v-model="formdata[dataall[index].id]" type="textarea"></el-input> </el-form-item> </div>为什么获取不到input
时间: 2024-04-02 17:36:58 浏览: 23
从代码来看,你在使用Vue.js框架的v-for指令动态渲染了多个el-form-item组件,并且每个组件都有一个el-input组件作为子组件。你使用了v-model指令将el-input组件的值绑定到formdata对象的对应属性上。
如果你不能获取到el-input组件的值,可能是因为你没有正确地绑定formdata对象的属性名。请确保dataall数组中每个元素的id属性与formdata对象中的属性名完全一致。
此外,也需要注意el-form-item组件的prop属性值需要与el-form组件的model属性值完全一致,以便在表单验证时能够正确地获取表单数据。
相关问题
在这个组件里 <el-dialog :visible.sync="showQueueDesc"> <el-form-item label="<span style='color:black'>提示:可右键点击下方队列名直接跳转</span>"></el-form-item> <el-select v-model="serverIp" placeholder="请选择机器ip(必填)" filterable allow-create clearable style="width: 220px; margin: 10px"> <el-option v-for="item in serverIpList" :key="item.value" :label="'server ip: ' + item.desc" :value="item.value"> </el-option> </el-select> <el-select v-model="queueNameDoc" placeholder="队列名称选择(必填)" filterable allow-create clearable style="width: 350px; margin: 10px"> <el-option v-for="item in queueNameDocList" :key="item.value" :label="item.desc" :value="item.value"> </el-option> </el-select> <div slot="footer"> <el-button @click="showQueueDesc = false">取消</el-button> <el-button type="primary" @click="openLink">确认</el-button> </div> </el-dialog> 为什么我el-form-item label这行字显示不出来
可能是因为你没有在 `el-dialog` 的 `el-form` 标签内添加 `el-form-item` 标签,你可以尝试以下代码:
```html
<el-dialog :visible.sync="showQueueDesc">
<el-form>
<el-form-item label="<span style='color:black'>提示:可右键点击下方队列名直接跳转</span>">
</el-form-item>
<el-select v-model="serverIp" placeholder="请选择机器ip(必填)"
filterable allow-create clearable
style="width: 220px; margin: 10px">
<el-option
v-for="item in serverIpList"
:key="item.value"
:label="'server ip: ' + item.desc"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="queueNameDoc" placeholder="队列名称选择(必填)"
filterable allow-create clearable
style="width: 350px; margin: 10px">
<el-option
v-for="item in queueNameDocList"
:key="item.value"
:label="item.desc"
:value="item.value">
</el-option>
</el-select>
<div slot="footer">
<el-button @click="showQueueDesc = false">取消</el-button>
<el-button type="primary" @click="openLink">确认</el-button>
</div>
</el-form>
</el-dialog>
```
这里我将 `el-form-item` 标签放在了 `el-form` 标签内,并且添加了缺失的 `el-form` 标签。
<el-form-item :label-width="formLabelWidth"> <div v-for="shelfLayerNum in shelfLayerNumList" :key="shelfLayerNum" class="box"> <el-row> <el-col :span="12"> <p v-if="formInsert.codeRule==1">右侧-第{{ shelfLayerNum.index }}节</p> <p v-if="formInsert.codeRule==2">左侧-第{{ shelfLayerNum.index }}节</p> </el-col> <el-col :span="2"> <p>层数:</p> </el-col> <el-col :span="10"> <el-input-number v-model="shelfLayerNum.value" :min="1" :max="10" @change="handleChange" /> </el-col> </el-row> </div> </el-form-item> </el-form> 这段代码出现Avoid using non-primitive value as key, use string/number value instead. 怎么解决
这个警告的原因是在使用 Vue 的 v-for 指令时,使用了一个非基本类型的值作为 key,而这可能会导致性能问题和不稳定的行为。为了解决这个问题,你可以将 key 值改为一个字符串或者数字。例如,你可以将代码改写为:
```
<el-form-item :label-width="formLabelWidth">
<div v-for="(shelfLayerNum, index) in shelfLayerNumList" :key="index" class="box">
<el-row>
<el-col :span="12">
<p v-if="formInsert.codeRule==1">右侧-第{{ shelfLayerNum.index }}节</p>
<p v-if="formInsert.codeRule==2">左侧-第{{ shelfLayerNum.index }}节</p>
</el-col>
<el-col :span="2">
<p>层数:</p>
</el-col>
<el-col :span="10">
<el-input-number v-model="shelfLayerNum.value" :min="1" :max="10" @change="handleChange" />
</el-col>
</el-row>
</div>
</el-form-item>
```
在这个例子中,我们将 key 值改为了索引值 `index`,这是一个基本类型的值,能够避免出现上述警告。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)