如果我没理解错的话,你可以试试 在sql 中将传进来的参数按单字切割,然后判断字段中是否包含这些文字(这只是简单的解决办法,mysql是有这类函数的,当然你也可以在后端逻辑中处理,实际项目中的(比如百度搜索)好像还要复杂很多,会有语义、词法、语法分析这类的)
这种隔断搜索应该如何实现?[图片] 重点在第三个
2020-05-11使用画布将二维码画上去,然后只导出上面部分
生成微信小程序二维码可取去掉二维码下方的微信扫一扫,使用小程序?[图片]下方的微信扫一扫,使用小程序是否可以去掉
2020-05-11如果只是上下滑动穿透的问题的话可以试试 在 textarea中 将滑动事件捕获掉
安卓端微信小程序 textarea 层级问题,使用cover-view依然无法解决安卓端微信小程序 textarea 层级问题,使用cover-view依然无法解决,上下滑动会出现穿透问题,已经测试小米,华为,三星,均有此问题。ios端没问题
2020-05-11bindchange 返回的数组里面下标全是文本型数字 循环的 index 就是数字型,所以你的 indexOf 一定是 -1,checked 一定是 false,也就一定选不中
checkbox 使用绑定checked后变成的单选且无样式,如何实现全选功能?直接上代码,这是我渲染的选择列表: [图片] selected为选中的下标数组 工具wxs 也就是上面的util [图片] 列表为多个 比如我点击第一个选项,选择后打印出来的e.detail.value是一个只有当前值得数组["0"],此时样式上就是闪了一下最后样式没有没选中,再次点击还是["0"],等于是选择后又被清空了。 这样我就无法设置selected的值 去掉checked="{{util.defaultCheck(selected,index)}}"这段绑定又没有问题。 本意是想通过另外一个按钮全选,实现所有多选框的选中与取消选中,结果就出现了这个问题。 欢迎大佬来解惑。
2020-05-11使用 promise 或者回调函数
onLoad和onShow里面的方法,怎么优化?onLoad方法和onShow方法,执行顺序是固定的,onLoad在先。 现在有个需求是定位打卡功能,onLoad方法去服务器获取数据,然后setData,数据是可以打卡的地点列表,用来与当前位置比较是否可打卡位置 因为要保证保证小程序切后台然后切回来之后,仍然会准确的获取当前位置,所以定位方法只能放在onShow里面去执行 现在问题是如果先定到位了,但是后台的数据还没拿到,这时候就会报错,有什么好的方法解决吗?
2020-05-11这个方法是异步的,返回值 是有可能在请求完成前面的,而且也没看到你返回值啊
页面onLoad调用util.js 封装的方法。ajax没执行完就返回值了吗?我无法获取到返回值。都具体代码如下 [图片][图片]
2020-05-11使用组件 的 solt
小程序如何实现往wxml中动态写入代码?我写组件传入的参数中希望带入标签然后渲染出来小程序如何实现往wxml中动态写入代码?就像html的document.innerHTML一样,通过js操作dom节点,然后渲染出来。 我要实现的组件情景:组件包括文字标题、文字内容、操作按钮。关键是需求要求有的文字内容需要高亮标红,那我能不能把文字内容参数做成一个带有wxml标签的字符串传入然后渲染出来?如下图所示: [图片]
2020-05-11没看懂问题
开发工具自动删除代码https://developers.weixin.qq.com/miniprogram/dev/component/picker.html
2020-05-11在 app.js 里封装 Page 函数,比如下面是我工作中需要做国际化,所以在 app.js 中拦截了 Page 方法 在每个页面的 onLoad 函数里处理事情 var page = Page; Page = function(options){ let onLoad = options.onLoad; options.onLoad = function(options){ wx.qyLanguage.initLanguage(this) onLoad.bind(this)(options) } page(options);
小程序怎么实现每个页面都执行app.js中的代码片段啊?我想做个埋点系统,有个配置自动上报pv统计,而不想一个一个页面去加代码上报。 但是app.js的代码只执行了一次,想每个页面都自动调用app.js中的一段代码,请问怎么做
2020-05-11你确定你报错的是 madeph.js 文件的 120 行??? 我看错误信息提示的是 /pages/select/select.js 文件的 77 行啊
globalData 未定义错误,求详细解决教程?// pages/madeph/madeph.js const app = getApp(); /** * 大概两部分: * 1、先把用户上传的头像画出来,类一个圆 * 2、把前一个页面传过来的头像框(中间透明)在画上去就基本结束了 */ Page({ /** * 页面的初始数据 */ data: { src: '', bgsrc: '', bgcss:'' }, //选择用户自己头像图片 upload() { wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 success(res) { const src = res.tempFilePaths[0] //将选择的图传至upload页处理 wx.navigateTo({ url: `../upload/upload?src=${src}` }) } }) }, //生成头像,即先画图像再画图像框 generate() { var self = this; var contex = wx.createCanvasContext('ahaucanvas'); //ttcanvas为该canvas的ID //var contex = ctx.getContext('2d'); var avatarurl_width = 840; //这个是画布宽 var avatarurl_heigth = 840; //这个是高 // var avatarurl_x = 50; // var avatarurl_y = 50; // contex.arc(avatarurl_width / 2 + avatarurl_x, avatarurl_heigth / 2 + avatarurl_y, avatarurl_width / 2, 0, Math.PI * 2, false);//这个地方我画了个头像的圆 // contex.clip(); contex.drawImage(self.data.src, 127, 120); contex.restore(); contex.save(); contex.beginPath(); //开始绘制 // contex.arc(150, 50, 30, 0, Math.PI * 2, false); // contex.clip(); //contex.arc(25, 25, 25, Math.PI * 2, false); //contex.clip(); contex.drawImage(self.data.bgsrc, 0, 0, avatarurl_width, avatarurl_heigth); // 这个是我的背 contex.restore(); // contex.setFontSize(20) // contex.fillStyle = "#fff"; // contex.fillText(self.data.gameConfig.myScore, 130, 132) // contex.restore(); contex.draw(true, setTimeout(function() { wx.canvasToTempFilePath({ //导出图片 width: 840, height: 840, destWidth: 840, destHeight: 840, canvasId: 'ahaucanvas', success: res => { wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success: function(data) { // console.log(data); wx.showToast({ title: '保存成功', icon: 'success', duration: 2000 }) }, fail: function(err) { // console.log(err); if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny") { // console.log("用户一开始拒绝了,我想再次发起授权") // console.log('打开设置窗口') wx.openSetting({ success(settingdata) { console.log(settingdata) if (settingdata.authSetting['scope.writePhotosAlbum']) { // console.log('获取权限成功,给出再次点击图片保存到相册的提示。') wx.showToast({ title: '请再次保存', icon: 'success', duration: 2000 }) } else { // console.log('获取权限失败,给出不给权限就无法正常使用的提示') wx.showToast({ title: '获取权限失败,可能导致保存图片无法正常使用', icon: 'none', duration: 2000 }) } } }) } } }) } }, this) }, 100)) }, onLoad(option) { var that = this; var bgcss = app.globalData.toubgsrc.substr(14, 2); that.setData({ bgsrc: app.globalData.toubgsrc, bgcss:bgcss }); // console.log(that.data.bgsrc); // console.log(that.data.bgcss); let { avatar } = option; if (avatar) { that.setData({ src: avatar }); } } }) [图片][图片]
2020-05-11