如图,就是这样子的效果要怎么写出来,就是我input框里面是用户输入的值,当用户输入3的时候出来三条数据这样子
<template>
<div>
<input type="text" v-model="value" @keyup="onKeyup">
<div v-for="(item, index) in list" :key="index">{{item}}{{index + 1}}</div>
</div>
</template>
<script>
export default {
data () {
return {
value: 3,
list: []
}
},
created () {
for (let i = 0; i < this.value; i++) {
this.list.push('被征收房屋')
}
},
methods: {
onKeyup () {
this.list = []
for (let i = 0; i < this.value; i++) {
this.list.push('被征收房屋')
}
}
}
}
</script>
<template>
<div>
<input type="number" v-model="val">
<div v-for="(item,index) in val" :key="index">
被征收房屋{{item}}
</div>
</div>
</template>
<script>
export default {
data() {
return {
val:''
}
},
mounted() {
},
methods: {
},
}
</script>
<template>
<div id="app">
<input type="text" v-model="value" @keyup="onKeyup">
<div v-for="(item, index) in list" :key="index">{{item.name}}{{index + 1}}</div>
</div>
</template>
<script>
export default {
data () {
return {
value: null,
list: []
}
},
methods: {
onKeyup () {
this.list = []
const num = Number(this.value)
const obj = {
name: '被征收房屋'
}
for (let i = 0; i < num; i++) {
this.list.push(obj)
}
}
}
}
</script>
先用v-model 双向绑定 获取输入的值 ,然后写一个数组,根据这个值的多少push进去,最后v-for循环数组出来就好了