若想实现用户输入多行文字,并保存至下次打开这个界面。首先肯定需要圈定一个区域/或者文本框使得用户可以输入文字,这里我使用的是<text>,而若需要多行输入文字,则可以使用<textarea>.
其次需要实现记忆存储的功能,则需要进行打开页面即调用存储的内容。
使用 wx.setStorageSync进行保存内容,wx.getStorageSync进行调用。
具体的实现代码如下:
wxml文件:(这里是使用了view组件,以便进行对文本区域美化样式)将文本区域与函数 userNameInputAction1绑定。
<view class="container">
<textarea bindinput="userNameInputAction1" auto-height class="input" name="whattosay" placeholder="输入想说的话吧" value='{{words}}' auto-focus="true" >
</textarea>
</view>
编写 userNameInputAction1的函数功能,并在启动页面是进行显示。
.js文件:
onShow() {
const self = this
let userText = wx.getStorageSync('userText')
console.log("调用的内容是" + userText)
if (userText) {
self.data.words = userText
self.setData(self.data)
}
},
userNameInputAction1: function (options) {
//获取输入框输入的内容
const word = options.detail.value
console.log("输入框输入的内容是" + word)
if (word) {
wx.setStorageSync('userText', word)
console.log("保存的内容是" + word)
}
},