经过两天学习基本上将框架搭起来,富文本已可以正常编辑,今天继续学习如何获取富文本所填写内容以及保存在微信云上,
获取内容:
API是这么写:
EditorContext.getContents(Object object)
获取编辑器内容参数
Object object
success function 否接口调用成功的回调函数
fail function否接口调用失败的回调函数
complete function否接口调用结束的回调函数(调用成功、失败都会执行)
得知在success事件中即可得到想要的值
所以我们在js中
this.editorCtx.getContents({
success: function (res) {
console.log(res)
},
fail: function () {
console.log("失败了")
},
complete: function () {
console.log("完成了")
}
})
云开发控制台数据库是这样的,我们先创建一个“happyNotes”集合用来保存每个用户所保存的笔记,笔记字段包括

_id:自动生成
text:笔记内容
time:创建时间
type:笔记类型
API:
Collection.add
在集合上新增记录函数签名如下:
function add(options: object): Promise
参数说明
options 为必填参数,是一个如下格式的对象,如传入 success、fail、complete 三者之一,则表示使用回调风格,不返回 Promise。
字段名类型必填默认值说明dataObject是新增记录的定义successFunction否成功回调,回调传入的参数 Result 包含查询的结果,Result 定义见下方failFunction否失败回调
因此调用add接口即可将本地数据上传到云数据库
const db = wx.cloud.database()
db.collection('happyNotes').add({
data: {
text:res.text,
time:new Date(),
type:'note'
},
success: result => {
console.log(result)
let pages = getCurrentPages(); //获取当前页面js里面的pages里的所有信息。
let prevPage = pages[pages.length - 2];
//prevPage 是获取上一个页面的js里面的pages的所有信息。 -2 是上一个页面,-3是上上个页面以此类推。
var oldnotes=prevPage.data.notes
var notes = []
var obj = {
text: res.text,
day: "10-24",
noon: "下午",
time: res.time,
name: 'layout',
color: 'green',
icon: 'newsfill'
}
notes.push(obj)
prevPage.setData({ // 将我们想要传递的参数在这里直接setData。上个页面就会执行这里的操作。
notes: notes.concat(oldnotes)
})
wx.showToast({
title: '保存成功',
})
wx.navigateBack({
delta: 1
})
代码里我们将填写文本上传到云端,并将首页数据增加刚才记录,并返回首页,这样首页就可以很顺利的显示我们新增的记录啦!是不是很棒?
另外今天对于首页显示也做了响应的优化,相同日期的合并一起显示,不在重复显示日期,使首页更美观一下~
怎么样?朋友,赶快行动起来使用云接口实现小程序开发吧?免费哦`~



网友评论