查找网上案例很多,但是都不是很满意,参考大牛案例终结了一下,话不多说代码如下:

实现效果:

前段代码

<view class="text-box">
<view>{{currentInput}}</view>
<textarea class="weui-textarea" placeholder="请输入文本" bindinput="getInput" maxlength="500"/>
</view>

css代码

.text-box{
width:750rpx;
padding: 20rpx 0;
box-sizing: border-box;
position: relative;
min-height:150rpx;
max-height:240rpx;
background: rgb(172, 253, 95)
}
.text-box view{
display:block;
visibility:hidden;
word-break:break-all;
word-wrap:break-word;
}
.text-box .weui-textarea{
width: 600rpx;
height:100%;
position: absolute;
left:75rpx;
top:0rpx;
overflow-y:hidden;
word-break:break-all;
word-wrap:break-word;
}

js代码

Page({
data:{
currentInput: ''
},
getInput: function (e) {
this.setData({
currentInput: e.detail.value
})
},
})

模拟微信朋友圈评论效果

    <view class="comment-reply-focus" v-else>
<view class="text-box">
<view>{{ currentInput }}</view>
<textarea
class="weui-textarea"
placeholder="评论 @一见生财"
focus="true"
@input="getInput"
maxlength="500"
fixed="true"
:show-confirm-bar="false"
:adjust-position="true"
cursor-spacing="20px"
/>
</view>
<view class="comment-reply-focus-send" @click.stop="sendComment()">发送</view>
</view>
.comment-reply-focus {
width: 100%;
position: relative;
padding-left: 40upx;
}
.text-box {
width: 580rpx;
padding: 20rpx 0;
box-sizing: border-box;
position: relative;
min-height: 80upx;
max-height: 160upx;
line-height: 40upx;
border: 1upx solid #e5e5e5;
border-radius: 5upx;
padding: 20upx;
}
.text-box view {
display: block;
visibility: hidden;
word-break: break-all;
word-wrap: break-word;
}
.text-box .weui-textarea {
width: 580upx;
height: 100%;
position: absolute;
left: 0upx;
top: 0upx;
overflow-y: hidden;
word-break: break-all;
word-wrap: break-word;
padding: 20upx;
} .comment-reply-focus-send {
width: 80upx;
height: 40upx;
line-height: 40upx;
font-size: 30upx;
text-align: center;
color: #e84351;
position: absolute;
right: 30upx;
bottom: 0upx;
}
export default {
data() {
return {
currentInput: ''
};
},
methods: {
getInput(e) {
this.currentInput = e.detail.value;
},
// 发送
sendComment() {
console.log(this.currentInput);
}
}
};

感兴趣的还可以查看:div模拟textarea文本域轻松实现高度自适应

参考链接:https://blog.csdn.net/liuwengai/article/details/78987957

小程序实现textarea行数自动增加的更多相关文章

  1. .Net_用控制台程序打印指定行数的三角型(面试题)

    .Net_用控制台程序打印指定行数的三角型(面试题)   下面是一个由*号组成的4行倒三角形图案.要求: 1.输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示“非法行数!”: ...

  2. 小程序实现textarea随输入的文字行数变化高度自动增加

    参考链接:https://blog.csdn.net/liuwengai/article/details/78987957 该实现方法是根据上面的链接改编为小程序的实现,代码如下: wxml: < ...

  3. 微信小程序 实现多行文字 超出部分省略号显示

    在开发小程序: 澳买 的 时候 遇到一个棘手的问题: 当搜索澳洲产品,获取产品列表的时候,有时候产品的名称翻译成中文特别长 我们不能全部在有限的列表里面把产品名都显示出来,这样格式不好控制,显示 出来 ...

  4. 微信小程序文字超过行后隐藏并且显示省略号

    在小程序开发过程中,经常会遇到一些数据无法在text中完全展示,所以会使用到隐藏相关文字,并在后方加上省略号(...). 只需要在对应的text中设置下面的css就可以了. overflow:hidd ...

  5. 微信小程序开发——连续快速点击按钮调用小程序api返回后仍然自动重新调用的异常处理

    前言: 小程序开发中诸如获取用户手机号码.调起微信支付.领取卡券等api都是会有一定的延迟的.也就是说通过点击按钮调用这些api的时候,从点击按钮调用api,到支付页面或者领取卡券界面展示出来是需要一 ...

  6. Java50道经典习题-程序19 输入行数打印菱形图案

    题目:根据用户输入的行数打印菱形图案,若用户传入的是为偶数则提示用户重新输入,例如输入数字7打印出如下菱形图案   *  *** ************ *****  ***   *分析:先把图形分 ...

  7. 利用easyui的行编辑自动增加一行来进行增删有详细注解

    jQuery EasyUI 框架提供了创建网页所需的一切,帮助您轻松建立站点. easyui 是一个基于 jQuery 的框架,集成了各种用户界面插件. easyui 提供建立现代化的具有交互性的 j ...

  8. 小技巧textbox的行数

    没什么技术含量,但如果不知道则实现起来很麻烦. c#中textbox.lines只记录回车的数量,并不是真正的总行数,如何得到呢,请使用: int 总行数 = this.textBox1.GetLin ...

  9. 微信小程序页面3秒后自动跳转

    setTimeout() 是属于 window 的方法,该方法用于在指定的毫秒数后调用函数或计算表达式. 语法格式可以是以下两种:   setTimeout(function () { // wx.r ...

随机推荐

  1. POI 2001 Goldmine 线段树 扫描线

    题目链接 http://www.acm.cs.ecnu.edu.cn/problem.php?problemid=1350 http://main.edu.pl/en/archive/oi/8/kop ...

  2. delphi窗体按钮灰化禁用

    1.使最小化按钮变灰:setwindowlong(handle,gwl_style,getwindowlong(handle,gwl_style)   and   not   ws_minimizeb ...

  3. TeX 常用命令记录

    常用: $a_{i}^{2}$    a_{i}^{2} $\sqrt x$     $\sqrt[n] x$     \sqrt[n] x $\frac{1+2}{3+4}$ 重音符号: $\hat ...

  4. Sweet Round 1题解

    感谢各位参赛者,所有的题解如下: T1 syx的奖励 这题明显是签到题了吧,随便猜猜结论就A掉了 先说怎么做吧,把所有的可走的数gcd起来,然后再与n求gcd 如果为1,则输出n,若不为1,则输出-1 ...

  5. 预备JS执行环境,预执行脚本

    page.evaluateOnNewDocument(pageFunction, ...args) pageFunction <function|string> Function to b ...

  6. R 正态性检验:正态概率图

    检验模型是否满足正态性假设的方法: 1.正态概率图 这是我编写的画正态概率图的函数: #绘制正态概率图 plot_ZP = function(ti) #输入外部学生化残差 { n = length(t ...

  7. R 读取回归模型的信息

    参考博客: http://blog.sina.com.cn/s/blog_8f5b2a2e0101fmiq.html https://blog.csdn.net/huangyouyu523/artic ...

  8. mysql导入导出无权限

    error:The MySQL server is running with the --secure-file-priv option so it cannot execute this state ...

  9. C语言备忘录——取余与取模

    前几天,一个小姐姐问我取余和取模有什么区别,我当时第一反应就是二者是一样的,但是小姐姐咬死说不一样.我去百度了一下还真的不一样.脑壳疼,我当初误导了多少人.所以为了帮助我记忆也为了帮助预防我误人子弟 ...

  10. HDU - 1087 Super Jumping! Jumping! Jumping!(dp)

    题意:从起点依次跳跃带有数字的点直到终点,要求跳跃点上的数字严格递增,问跳跃点的最大数字和. 分析: 1.若之前的点比该点数字小,则可进行状态转移,dp[i] = max(dp[i], dp[j] + ...