- 用cavas-view 写组件样式不生效?
我页面上有cavas 需要个弹框 想着弹框用cavas-view 写 但是样式不生效 有没有人遇到过 只有第一个.mask生效了 其他全部是cover-view 自带样式 <cover-view class="mask "> <cover-view class="welfare_mask"> <cover-view style="background:url({{staticimg}}welfare_success.png) no-repeat center center;background-size:100% 100% "> <cover-image src="../../pages/pic/sussced.png"></cover-image> <cover-view> <cover-view>{{text}}</cover-view> <cover-view>请在“我的福利”里查看详情</cover-view> </cover-view> </cover-view> <cover-view> <cover-view > 兑换码:{{couponNum}}<cover-view class="copy" bindtap="handleCopy" data-text="{{couponNum}}">点击复制</cover-view> </cover-view> <cover-view>使用说明</cover-view> <cover-view class="slot"> <slot></slot> </cover-view> </cover-view> </cover-view> <cover-image class="cover-images" src="../../pages/pic/close.png" bindtap="close"></cover-image> </cover-view> /* components/box.wxss */ .mask { position: fixed; left: 0; top: 0; width: 100%; height: 100vh; z-index: 990; background-color: rgba(0, 0, 0, 0.6); display: flex; align-items: center; justify-content: center; } .welfare_button_error { width: 120rpx; height: 40rpx; font-size: 22rpx; background: rgba(229, 229, 229, 1); color: #B2B2B2; line-height: 40rpx; text-align: center; } .welfare_mask { width: 600rpx; } .mask>.cover-images { width: 48rpx !important; height: 48rpx; position: absolute; bottom: 80rpx; } .welfare_mask>cover-view:nth-child(1) { height: 255rpx; width: 600rpx; display: flex; align-items: center; justify-content: center; font-size: 28rpx; } .welfare_mask>cover-view:nth-child(1) cover-image { width: 120rpx; height: 120rpx; margin-right: 30rpx; } .welfare_mask>cover-view:nth-child(1)>cover-view cover-view:nth-child(2) { font-size: 22rpx; margin-top: 7rpx; color: rgba(153, 153, 153, 1); } .welfare_mask>cover-view:nth-child(2) { height: 585rpx; width: 600rpx; padding: 0 40rpx; background: white; padding-top: 15rpx; font-size: 24rpx; border-radius: 0px 0px 20rpx 20rpx; } .welfare_mask>cover-view:nth-child(2)>cover-view:nth-child(1) { height: 60rpx; width: 520rpx; background: rgba(252, 249, 236, 1); border-radius: 4rpx; line-height: 60rpx; padding-left: 22rpx; } .welfare_mask>cover-view:nth-child(2)>cover-view:nth-child(2) { margin-top: 40rpx; margin-bottom: 21rpx; color: #333333; } .welfare_mask>cover-view:nth-child(2)>cover-view:nth-child(3) text { display: block; line-height: 40rpx; color: #666666; } .welfare_mask>cover-view:nth-child(2)>cover-view>.copy { height: 30rpx; width: 138rpx; float: right; border-left: 1px solid #CCCCCC; line-height: 30rpx; text-align: center; margin-top: 15rpx; font-size: 24rpx; font-weight: bold; color: rgba(195, 59, 41, 1); } .slot { width: 100%; height: 400rpx; overflow: auto; display: flex; align-items: center; flex-direction: column; }
2020-06-22 - getStorageSync 报错不能使用?
[图片][图片]
2020-06-22 - cavas 在自定义组件不显示?
// components/arc.js let mytime = ""; let n = 0; var w = ""; var h = ""; Component({ /** * 组件的属性列表 */ properties: { }, /** * 组件的初始数据 */ data: { score: 100, //传入的进度, 0~100,绘制到此参数处停止。 }, attached() { console.log(this,211) const ctx = wx.createCanvasContext("bgCanvas", this); //创建一个全局的canvas绘图上下文 const ctx2 = wx.createCanvasContext("runCanvas", this); this.setData({ ctx, ctx2 }) let that = this; let allSrc = 0.015 * that.data.score; //应该绘制的弧度 let src = allSrc / 100 //计算出每个间隔应该绘制多少弧度。 this.setData({ src: src, allSrc: allSrc }, res => { }) }, ready() { let that = this let query = wx.createSelectorQuery().in(this) query.select('#canvas-one').boundingClientRect(function (rect) { //监听canvas的宽高 w = parseInt(rect.width / 2); //获取canvas宽的的一半 h = parseInt(rect.height / 2); //获取canvas高的一半, //获取宽高的一半是为了便于找到中心点 let ctx = that.data.ctx ctx.arc(w, h, w - 8, 0.75 * Math.PI, 2.25 * Math.PI); //绘制圆形弧线 ctx.setStrokeStyle("#dddddd"); //设置填充线条颜色 ctx.setLineWidth("8"); //设置线条宽度 ctx.setLineCap("round"); //设置线条端点样式 ctx.stroke(); //对路径进行描边,也就是绘制线条。 ctx.draw(); //开始绘制 }).exec() }, /** * 组件的方法列表 */ methods: { run(e) { let that = this; let src = that.data.src; //每个间隔所需绘制的弧度 let allSrc = that.data.allSrc; //总共需要绘制的弧度 n++; if (src * n > allSrc) { clearInterval(mytime); //如果绘制完成,停掉计时器,绘制结束 n = 0; return; } let ctx2 = this.data.ctx2 let grade = Math.round(src * n / 1.5 * 100); //百分数 ctx2.arc(w, h, w - 8, 0.75 * Math.PI, (0.75 + src * n) * Math.PI); //每个间隔绘制的弧度 ctx2.setStrokeStyle("#84D944"); ctx2.setLineWidth("8"); ctx2.setLineCap("round"); ctx2.stroke(); ctx2.beginPath(); ctx2.setFontSize(40); //注意不要加引号 ctx2.setFillStyle("#84D944"); ctx2.setTextAlign("center"); ctx2.setTextBaseline("middle"); ctx2.fillText(grade + "%", w, h); ctx2.draw(); }, canvasTap() { let that = this; clearInterval(mytime); mytime = setInterval(that.run.bind(this), 50) } } }) <!--components/arc.wxml--> <view class='content'> <canvas canvas-id='bgCanvas' type = "2d" id='canvas-one' class='canvasI'></canvas> <canvas canvas-id="runCanvas" type ="2d" class='canvasII'></canvas> <button size='mini' type='default' class='btn' style='padding:0;' catchtap='canvasTap'>点击绘制</button> </view>
2020-06-06 - 微信小程序苹果8 new Date()获取时间与安卓和苹果6不一样 多8小时?
countDown(key, endTimeList, that,) {//倒计时函数 /** * key 是setData 的属性名字 * endTimeList 是结束时间列表 */ // 获取当前时间,同时得到活动结束时间数组 let newTime = new Date().getTime(); let countDownArr = []; // 对结束时间进行处理渲染到页面 endTimeList.forEach(o => { let endTime = new Date(o).getTime(); let obj = null; // 如果活动未结束,对时间进行处理 if (endTime - newTime > 0) { let time = (endTime - newTime) / 1000; // 获取天、时、分、秒 let day = parseInt(time / (60 * 60 * 24)); let hou = parseInt(time % (60 * 60 * 24) / 3600); let min = parseInt(time % (60 * 60 * 24) % 3600 / 60); let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60); obj = this.timeFormat(day)+':'+this.timeFormat(hou)+':'+this.timeFormat(min)+':'+this.timeFormat(sec) } else {//活动已结束,全部设置为'00' obj = "00:00:00" } countDownArr.push(obj); }) // 渲染,然后每隔一秒执行一次倒计时函数 that.setData({ [key]: countDownArr }); // 函数内调用自身,,重复使用setTimeout 就每隔一秒调用一次了 that.data.toTime= setTimeout(() => { this.countDown(key, endTimeList, that) }, 1000); }
2020-04-11 - 微信小程序报错?
本地没有使用 WebSocket 但是报错WebSocket connection to 'ws://127.0.0.1:50920/' failed: Error in connection establishment: net::ERR_CONNECTION_REF
2020-04-08 - 微信小程序获取指定页面获取DOM节点生成图片?
现在有个需求 需要b在页面列表中点击分享 分享的是a页面的截图 请问怎么实现 我想获取dom界面然后生成图片但是没有实现
2020-04-07 - 事件触发
<navigator open-type='switchTab' url='/pages/home/home' class='nav2'> <view class='buy' catchtap='verifications'> <form report-submit bindsubmit="submitfromid" style='width:100%;height:100%'> <button form-type="submit" plain style='width:100%;height:100%;border:none;line-height:114rpx;color:white'>立即购买</button> </form> </view> </navigator> 我外层盒子有个事件 内部还有个触发fromid的事件 两个的触发点在一个区域 在工具可以触发两个事件 但是在手机就无法触发外层盒子的事件
2019-01-11 - 页面闪退
我在主页 请求数据 页面是数据渲染 然后点击页面到指定页面 请求前加了loding(加了mask) 在success里面结束的loding 但是现在 在loding刚加载完成就点击跳转 他会跳到指定页面 但是马上又会跳回来!!如果loding加载完成 1s之后点击跳转就不会出现这种问题 请问咋回事
2019-01-08 - 微信再带tabbar随机出现
不用微信自带tabbar 自定义tabbar 用 wx.hideTabBar(); 但是 自带tabber会随机出现在自定义tabbar底部
2019-01-07 - input
- 需求的场景描述(希望解决的问题) 我自定义了个地区三级联动,但是现在在手机发现个问题 input获取了焦点后手机会弹出键盘会将我的弹框遮盖住 手动不能禁用掉么 - 希望提供的能力 可以自己打开关闭键盘
2019-01-02