1.关闭textarea标签的右下角拖动

style=“resize:none;”

2.给标签绑定数据和添加ref

<textarea class="list_textarea" ref="lczdTxtRef" style="resize:none;"
 v-model="lczdTxt"  @input="inputInfo($event)"></textarea>

3.通过input监听输入值后标签的高度变化

 inputInfo(event) {
            event.target.style.height = "36px"; // 默为空时的高度设置
        },

4.通过监听来动态设置高度

watch:{
 lczdTxt(newVal) {
            this.getHight('lczdTxtRef');
        },
},
methods:{
   getHight(refName) { // 
            let textArea = this.$refs[refName];
            if (textArea.scrollHeight < 100) {
                textArea.style.height = textArea.scrollHeight + "px";
            } else {
                textArea.style.height = 100 + "px";
            }
        },
}

此处100px为我设置的最大高度,当文字高度超过100时,就会出现滚动条

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐