按网上的各种教程写了开放数据域,但转后保存到主域文件夹下,现在微信开发工具里打开,却还得得写,结果就在微信开发工具写无奈写了个排行榜,排行榜出做出来了,数据也正确了,canvas上做效果很麻烦,真心不好看,请问,大家知道开放数据域为什么导出后,index.js根本没有代码,还得重写,这是哪个环节出了问题呢?
就这样自己在canvas上硬写了一个,自己估算了个自适应百分比,不是办法呀!出来一板黑屏,还不能下滑动
let sharedCanvas = wx.getSharedCanvas()
let context = sharedCanvas.getContext(‘2d’)
let context2 = sharedCanvas.getContext(‘2d’)
var w = wx.getSystemInfoSync().windowWidth;
var h = wx.getSystemInfoSync().windowHeight;
var wt = w / 2;
var k = w / 2.5;
var ht = h / 10;
function hide() {
context.clearRect(0, 0, 1500, 2400)
}
wx.onMessage(data => {
var self = this;
//排序自定义函数
function compare(property) {
return function (a, b) {
var value1 = a[property];
var value2 = b[property];
return value1 - value2;
}
};
switch (data.message) {
case ‘Show’:
wx.getFriendCloudStorage({
keyList: [“score”], //获取到好友存储的LV值
success: function (res) {
let data = res.data;
let newArr = data.sort(compare(‘score’))
//不变背景
context2.fillStyle = ‘black’
console.log(w + ’ ’ + h)
context2.fillRect(0, ht - 30, 1000, 2300)
context.font = “18px Verdana”;
context.fillStyle = ‘white’
context.fillText(“排名”, wt + 10, ht * 5.5);
context.fillText(“昵称”, wt + k / 1.2, ht * 5.5);
context.fillText(“闯关数”, wt + k * 2, ht * 5.5);
//不变背景
let len = newArr.length;
let i = len - 1
if (i > 20) {
i = 20
}
while (i > -1) {
let dataItem = newArr[i];
let kvData = dataItem.KVDataList;
let avatarUrl = dataItem.avatarUrl;
let nickname = dataItem.nickname;
let img = wx.createImage();
img.src = "" + avatarUrl;
context.fillText(len - i, wt + 15, ht * 5.5 + ((len - i) * 30));
context.drawImage(img, wt + k / 1.55, (ht * 5.5 - 20) + ((len - i) * 30), 25, 25);
context.fillText(nickname, wt + k / 1.2, ht * 5.5 + ((len - i) * 30));
context.fillText(kvData[0].value, wt + k * 2.2, ht * 5.5 + ((len - i) * 30));
i--
}
}
});
break;
case 'ShowStage':
//console.log("显示列表")
var scene = data.stScene;
wx.getFriendCloudStorage({
keyList: ["st" + scene], //获取到好友存储的LV值
success: function (res) {
let data = res.data;
let newArr = data.sort(compare('scores'))
//不变背景
console.log(wt + ' ' + ht)
context2.fillStyle = 'black'
context2.fillRect(0, ht - 60, 1000, 2000)
context.font = "18px Verdana";
context.fillStyle = 'white'
context.fillText("排名", wt + 10, ht * 7.5);
context.fillText("昵称", wt + k / 1.4, ht * 7.5);
context.fillText("步数", wt + k * 2, ht * 7.5);
//不变背景
let len = newArr.length;
let i = len - 1
if (i >= 20) {
i = 20
}
while (i > -1) {
let dataItem = newArr[i];
let kvData = dataItem.KVDataList;
let avatarUrl = dataItem.avatarUrl;
let nickname = dataItem.nickname;
let img = wx.createImage();
img.src = "" + avatarUrl;
context.fillText(len - i, wt + 15, (ht * 7.5) + ((len - i) * 30));
context.drawImage(img, wt + k / 2, (ht * 7.5 - 20) + ((len - i) * 30), 25, 25);
context.fillText(nickname, wt + k / 1.4, (ht * 7.5) + ((len - i) * 30));
context.fillText(kvData[0].value, wt + k * 2.05, (ht * 7.5) + ((len - i) * 30));
i--
}
}
});
break;
case 'Hide':
hide()
console.log("隐藏列表")
break;
}
})
