wepy 小程式 echarts 搭配使用
元件:
canvas-id不能自定義貌似是wepy的原因
<style> </style> <template> <canvas class="ec-canvas" canvas-id="eChart" ></canvas> </template> <script> import wepy from 'wepy' import * as echarts from '../plugins/ec-canvas/echarts' import WxCanvas from '../plugins/ec-canvas/wx-canvas' export default class ecCanvas extends wepy.component { props = { ec: { type: Object }, canvasId: { type: String, default: 'eChart' } } data = { ec: null, canvasId: null, chart: null } onLoad() { const version = wx.version.version.split('.').map(n => parseInt(n, 10)) const isValid = version[0] > 1 || (version[0] === 1 && version[1] >= 9) || (version[0] === 1 && version [1] === 9 && version[2] >= 91) if (!isValid) { console.error('This version of Wexin is not supported by ECharts. Please update Wexin with versions after 1.9.91') return } const ctx = wx.createCanvasContext(this.canvasId, this.$wxpage) const canvas = new WxCanvas(ctx) echarts.setCanvasCreator(() => { return canvas }) var query = wx.createSelectorQuery().in(this.$wxpage) query.select('.ec-canvas').boundingClientRect(res => { if (this.ec && this.ec.onInit) { this.chart = this.ec.onInit(canvas, res.width, res.height) } }).exec() } methods = { touchStart: function(e) { if (this.chart && e.touches.length > 0) { var touch = e.touches[0] this.chart._zr.handler.dispatch('mousedown', { zrX: touch.x, zrY: touch.y }) this.chart._zr.handler.dispatch('mousemove', { zrX: touch.x, zrY: touch.y }) } }, touchMove: function(e) { if (this.chart && e.touches.length > 0) { var touch = e.touches[0]; this.chart._zr.handler.dispatch('mousemove', { zrX: touch.x, zrY: touch.y }) } }, touchEnd: function (e) { if (this.chart) { var touch = e.changedTouches ? e.changedTouches[0] : {} this.chart._zr.handler.dispatch('mouseup', { zrX: touch.x, zrY: touch.y }) this.chart._zr.handler.dispatch('click', { zrX: touch.x, zrY: touch.y }) } } } } </script>
page:
</template> <view class="container"> <ecCanvas :ec.sync="ec"></ecCanvas> </view> </template> <script> import wepy from 'wepy' import echarts from '../plugins/ec-canvas/echarts' import ecCanvas from '../components/eCanvas' export default class page extends wepy.page { 和echarts一致
components = { ecCanvas: ecCanvas }}
未經允許請勿轉載
相關推薦
wepy 小程式 echarts 搭配使用
元件:canvas-id不能自定義貌似是wepy的原因<style> </style> <template> <canvas class="ec-canvas" canvas-id="eChart" ></canvas
微信小程式 Echarts 非同步資料更新
微信小程式 Echarts 非同步資料更新的練習,被坑了很多次,特作記錄。 作者:羅兵 地址:https://www.cnblogs.com/hhh5460/p/9989805.html 0、效果圖 1、檢視 <!--index.wxml--> <view class="
【WePY小程式框架實戰四】-使用async&await非同步請求資料
async await 是對promise的近一步優化,既解決了promise鏈式then的這種寫法壁壘,又讓非同步請求更像同步,若對async await不太瞭解的同學可以直接參考阮一峰老師的文章async 函式的含義和用法,這裡我們只關注怎麼在小程式wepy架構中如何使用。 依賴庫 import
快速入門 WePY 小程式
一、WePY介紹 WePY 是 騰訊 參考了Vue 等框架對原生小程式進行再次封裝的框架,更貼近於 MVVM 架構模式, 並支援ES6/7的一些新特性。 二、WePY 使用 1、WePY的安裝或更新都通過npm進行: npm install -g wepy-cli
使用wepy 小程式授權點選取消授權失敗的方案
在wepy裡使用進行小程式頁面授權,裡面包含了使用者點選取消的重新授權方案: //auth.js /* * @Author: Porco_Mar * @Date: 2018-04-11 15:49:55 * @Last Modified by: Porco_Mar * @Las
wepy-小程式開發框架學習(一)
一、安裝npm由於新版的NodeJS已經集成了npm,我們可以安裝NodeJS來實現安裝npm。首先去nodejs官網(https://nodejs.org/en/)上下載最新版的nodejs,如下圖,點選下載下載完成以後,一路next即可安裝,如需更改安裝目錄,請自行配置。
Atom 完美支援WePY 小程式開發
Atom-完美支援WePY 簡介 為何使用WePY? 我們都知道開發小程式的時候有很多很多的不方便的地方,譬如: 小程式的元件化支援能力太弱 小程式無法使用npm包,無法使用第三方元件
微信小程式---ECharts
import * as echarts from '../../ec-canvas/echarts';Page({ data: { ecBar: { lazyLoad: true // 延遲載入 }, ecScatter: { lazyLoad: true }
wepy寫小程式
wepy文件 https://tencent.github.io/wepy/document.html#/ 開始 wepy init standard myproject ——>npm install安裝node包——>wepy build –watch現在出現dist目錄
Echarts圖表在移動端和小程式中影響頁面的滾動的解決辦法
Echats圖表在移動端顯示後,當手指在圖表區域內滑動,會影響頁面的滾動。h5頁面沒有親測,小程式頁面,經排查,是因為觸發了touchStart、touchMove和touchEnd方法。 一、h5頁面解決方法 1.如果可以的話,移動端建議使用highCharts代替echarts,感覺
微信小程式中使用Echarts(可非同步請求資料)
在微信小程式中使用Echarts,主要分為以下幾步: 1.首先要下載ecomfe/echarts-for-weixin專案,下載後將ec-canvas資料夾複製到小程式專案中,假設放在根目錄下utils資料夾中。 2.在要實現echarts圖的頁面引入echarts.js檔案,例如要在i
微信小程式顯示 html wepy + wxParse
本問出自: http://blog.csdn.net/wyk304443164 修改自: http://www.wxappclub.com/topic/961 本著不重複造輪子的基礎上我找到了上面這篇。發現它不能正常執行,也就是顯示的是空白的。
微信小程式 wx.request wepy 簡單封裝
本文出自: http://blog.csdn.net/wyk304443164 很簡單 import sha1 from './sha1' // sign // 簽名 function sign (signObj = {}) { ... // 自行加密
微信小程式 wepy wx.previewImage 封裝
本文出自: http://blog.csdn.net/wyk304443164 imagebrowse.wpy <style lang="less"> .clear { clear: both; } </style> &
小程式第三方框架對比 ( wepy / mpvue / taro )
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 60.0px "PingFang SC Semibold"; color: #42464d } span.s1 { font: 60.0px "PingFang SC" } &
微信小程式WEPY不支援過濾器的替代方案
用慣了VUE和Angular的小夥伴們,肯定很喜歡過濾器這個功能,非常的簡介和好用 課時微信小程式不支援過濾器,從而導致WEPY和MPVUE等開發微信小程式的框架也不支援過濾器 對於單一的資料,還是比較好處理的,寫一個計算屬性就能解決問題 我遇到的問題是: 在一個列表中
微信小程式 wepy框架關於攔截器的應用例項
需求 因為安全的需要,很多時候我們訪問介面的時候需要進行驗籤,而用於驗籤的資訊是需要存入請求頭的 業務邏輯如下: 登入並獲取使用者資訊 將使用者資訊存入全域性變數中 其他業務訪問介面 攔截請求,並將需要的驗籤資訊存入到請求頭裡面 放行
thirdScriptError sdk 報錯、小程式遇到的各種報錯提醒以及使用wepy框架中出現的問題小程式遇到的各種報錯提醒以及使用wepy框架中出現的問題
最近一直在寫我們公司的小程式,已經發布,在這個過程中遇到了很多bug以及小程式wepy框架的問題。下面我就簡單的羅列出來一些bug和解決方案,後期如果遇到新的問題或者報錯提醒,我會持續更新的。 &nbs
小程式wepy踩坑之旅(五)----- 購物車的實現
首先大家可以看下演示效果 我先把封裝的幾個元件程式碼放到前面。 1.購物車數量加減cart-count.wpy元件 <template> <view class="cart-count"> <vi
小程式wepy踩坑之旅(四)----- 簡單的動畫
大家可以先看下官網小程式apianimation:https://developers.weixin.qq.com/miniprogram/dev/api/api-animation.html,看完之後推薦看一下http://www.jb51.net/article/102263