<template>
<view>
<view style="height: 200px;border: 1px solid #000;">
<scroll-view scroll-y="true" style="width: 200px;height: 200px;border: 1px solid red"
:scroll-top="scrollTop" >
<textarea :auto-height="true" style="max-height: 200px;border: 1px solid #000;" maxlength="-1"
:value="msg" :auto-focus="false" inputmode="none" @linechange="scrollToBottom"></textarea>
</scroll-view>
</view>
</view>
</template>
- :scroll-top=“scrollTop”:滚动条位置
- @linechange=“scrollToBottom”:监听textarea的行数变化
<script>
export default {
data() {
return {
msg: "",
scrollTop: 0
}
},
onShow() {
var a = 0
setInterval(() => {
a += 1
this.msg = this.msg + a + "\n"
}, 1000)
},
methods: {
scrollToBottom(e) {
console.log(e.detail)
this.scrollTop = e.detail.height //赋予textarea的高度
}
}
}
</script>