// package/pointsStatus/pointsStatus.js import { getProjectGraph, getDeployPoints } from "../../utils/getApiUrl"; import { Request } from "../../common"; Page({ /** * 页面的初始数据 */ data: { imgUrl: getApp().globalData.imgUrl, image: '', allPoints: [], setedPoints: [], }, getData(projectId) { const that = this; wx.showLoading({ title: '加载中...' }); Request.get(getProjectGraph(projectId)).then(res => { if (res) { Request.get(getDeployPoints(res.id)).then(pointsRes => { that.setData({ image: res.graph, allPoints: pointsRes.allPoints, setedPoints: pointsRes.setedPoints.map(p => ({ ...p, position: JSON.parse(p.position), pointInfo: pointsRes.allPoints.find(a => a.id === p.pointId), })), }) }) } else { // 未布设 } wx.hideLoading() }) }, calcTooltip(e) { const pointNodeId = e.currentTarget.id; const pointId = e.currentTarget.dataset.id; const windowWidth = wx.getSystemInfoSync().windowWidth; const query = this.createSelectorQuery().in(this); query.select('#' + pointNodeId).boundingClientRect(data => { const sub = windowWidth - data.left < 100 ? 100 - (windowWidth - data.left) : 0; const nextSetedPoints = this.data.setedPoints.map(p => { if (p.id == pointId) { p.sub = sub; p.show = !p.show; } return p; }) this.setData({ setedPoints: nextSetedPoints }) }).exec() }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const { projectId } = options; this.getData(projectId); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })