- 预拉取数据的疑问?bug?
今天研究了一下预拉取数据,有些疑惑的地方。 在我的代码包(1M)中使用预加载,在代码包中发出 db.collection返回数据比预加载数据要快。预加载需要调用云函数去获取数据库数据,小程序端直接db反而更快。尤其在要预加载的数据多时(你又不想在一个云函数中多次访问不同数据库集合)那么你就需要在设置的云函数中,分别调用其他的云函数,获取相应的数据,再统一由预设的云函数返回。速度会更慢。这时候的问题就是,你在小程序中的 wx.getBackgroundFetchData会返回错误(data no found),就是说,小程序启动了,但是数据还没回来。只能通过递归等待(有隐患吧)[图片] 2 . 经测试,小程序销毁后,这个预加载的缓存数据不会销毁。而下次冷启动设置的预加载函数一样会被调用。如果网络延迟一下,那么就会导致,小程序启动后,获取的不是当次冷启动下的预加载数据,而是上一次预加载的数据。这就不对了。如果再像上面的情况那样,你永远获取的只能是上一次的预加载数据。 问题出在预加载数据的缓存,应该在小程序销毁时一起销毁。 上面测试是在工具上进行的。以上是个人心得,有不对的地方希望大佬指出。感觉现在的预加载不是很舒服。
2021-05-25 - 小程序不支持 reflect-metadata 元数据库么?
[图片] 搜索不到相关问题,有人知道么?
2021-05-19 - 建议官方打包一个小程序的tslint规则集合方便es-lint中引入方便代码管理和维护?
期待 @typescript-config-miniprogram
2021-04-24 - 能否利用cms中的api,节省一些代码?
cms提供了基本的后台管理,其中已经写有一些schema和验证相关代码。 比如在cms中建立了一个用户模板,规定了一些字段,和验证规则,现在在小程序端需要新建一个用户的时候,还要在小程序端写用户的类型接口并且在云函数中,写用户字段的验证规则。既然cms中已经有这些代码了?能否利用cms中以后的代码呢?比如在新建用户的云函数中,需要验证用户字段的情况下,直接调用cms中的验证api,免得自己再写一样的代码了!不知道这种想法是否可行?
2021-04-18 - 同一组件(有计算属性)在不同页面渲染时,后渲染的组件会导致之前组件的计算属性失效。缓存覆盖?谁遇到过
项目中,引入官方的计算属性拓展 miniprogram-computed 发现问题。 已经提了bug多天,刚才github发了issue,你们有遇到过么?下面有代码片段,没人管,搞得我怀疑自己用的不对?真的? https://developers.weixin.qq.com/community/develop/doc/0006e4cdcb4998e9a2fb6868951c00
2021-04-15 - 官方拓展的 miniprogram-computed bug 4.03版本
bug1描述: 自定组件my-custom中引入computed 并使用computed得到一个计算属性X。在A页面和B页面中都引入my-custom组件。 进入A页面时,A页面 计算属性X正常。 从A跳转到B页面后, B页面的X属性正常 从B页面放回A页面后,A页面X属性失效。 一句话总结就是:同一个自定义组件多次渲染时,后渲染的自定义组件会使得之前渲染的自定义组件的计算属性失效。 代码片段:https://developers.weixin.qq.com/s/TgG3Btme74pf bug2描述 相同页面重复加载相同自定义组件(有计算属性)会使得ide卡死,你的内存使用率会嗷嗷上升,切记电脑卡死之前关闭此小程序 代码片段 https://developers.weixin.qq.com/s/2EHaYtmN7bpq
2021-04-11 - 商品查询 includes条件如何写? 例如 查询商品名包含 '苹果' 的所有商品!
看了半天文档没找到, db.collection('goods').where({ name:’苹果‘}) 如何写,name包含苹果这个条件呢?
2021-04-09 - 内容管理中的内容模型如何建立空数组啊?
有时候,需要建立空数组啊!,可是现在的内容模型不允许啊! 比如商品分类模型下,我要预留goodsList为空数组.在从商品集合中获得对应分类的具体商品数据后,再加入其中,可是现在不允许创建空数组,愁死了! 如果建立空数组情况下,小程序端 获取数据库分类集合后 直接就可以定义类型。后期往预留的goodsList中加入最新获取的分类商品数据。 小程序现在用ts开发太烦了,类型不全,漏洞还多,好烦啊!!!哈啊啊啊啊!!!!!!!!!!!!!!
2021-04-02 - eslint --cache 和 lint-staged 是不是用一个就可以了?
eslint --cache 调用就只针对缓存修改内容了。 lint-staged 是针对staged区 是不是功能重复了? 那么再husky hook里是不是就不用调用 lint-staged的配置,直接调用eslint --cache 就行了??? 有点乱,请大神指点下!!
2021-03-04 - 如何用lookup一次调用,得到多级关联的数据?
新人接触数据库 (超市) 一级类目集合 xxx : 【 { id:0001,name:水果 },{id:002,name:蔬菜}......】 二级类目集合 yyy : 【 { id:1001,name:'热带水果',category:'0001'},{id:1002,name:'非热带水果',category:'0001'},......】 商品集合 zzz: 【 { id:'3001',name:'香蕉',category:'1001' } , { id:'3002',name:'苹果',category:'1002' }......】 只会通过 db.collection('xxx').aggregate().lookup({ from:'zzz', localField:'_id', foreignField:'category', as:'list' }).end() 得到关联的一层数据。 如何 从 通过 db.collection('xxx') 获得被关联的数据list中的每一项也被关联的数据(即获取多层关联的数据,包含最终的商品数据) 好比得到的数据如下 【 { id:0001,name:水果,list:【 { id:1001,name:'热带水果',category:'0001', list: 【 { id:'3001',name:'香蕉',category:'1001' } , { id:'3002',name:'苹果',category:'1002' } 】 } , .... 】 } ...... 】 求大神指点,如何做?还是说我的数据结构是不对的??
2021-02-16