在线不卡视频一区二区_91免费在线观看网站_国产视频在线看_91精品国产色综合久久

微信小程序分包教程(微信小程序主包和分包的區(qū)別)

1. 需求詳解

很多時候,我們在項目中會大量使用到可視化圖表數(shù)據,在大量工作中,我們最熟悉的可視化數(shù)據一定是echarts這個工具,它非常好用并免費.聽起來很香,對!它真的很香。

但是當我們在特定場景中,比如小程序,那它就是一個非常頭痛的存在,為什么?在小程序中代碼上傳大小規(guī)定只有2M,而echarts在小程序中使用必須要在本地使用,無法使用連接的方式外部引用(微信官方規(guī)定項目有請求白名單)。

那么在項目中使用了echarts會非常占用我們有限的空間,那怎么辦呢,下面就告訴大家在小程序項目使用可視化工具的方法。

2. 使用echarts

首先去官網,相對于有小程序開發(fā)經驗的開發(fā)者來說, 步驟比較簡單。大體上的步驟:

1、下載官網例子。

2、把官網例子中的ec-canvas文件夾復制到項目目錄中。

3、在具體的頁面中像使用組件一樣引入ec-canvas。

4、在具體的頁面的js中進行初始化。

在下載完官網例子后,找到ec-canvas文件夾,里面有echarts.js,wx-canvas.js還有ec-canvas四件套。

然后把這個文件夾復制到自己項目的目錄下,放到utils下的,后來分包之后就放別的地方,這里就當放在utils下了。然后項目就大了700+KiB。

頁面中的使用 xxx.json文件中

{

“usingComponents”: { “ec-canvas”: “xxx/xxx/xxx/ec-canvas/ec-canvas” }

}

xxx.wxml 中使用組件來實例

<view class=”container-echarts margin-top-10″>

<ec-canvas class=”mycharts” id=”mychart-dom-bar” canvas-id=”mychart-bar” ec=”{{ ec }}”></ec-canvas>

</view>

js文件中

首先要引入echarts然后才能用下面的initChart方法,所以根據放置的ec-canvas的路徑引入echarts。

import * as echarts from ‘
xxx/xxx/xxx/ec-canvas/echarts’; // 根據放置的ec-canvas的路徑引入echarts

let chart = null // 用一個變量保存echarts的初始化

let options = { // 圖形配置,用過echarts的人都知道是嘛意思~ 這里給出官網線圖的基礎例子

xAxis: {

type: ‘category’,

data: [‘Mon’, ‘Tue’, ‘Wed’, ‘Thu’, ‘Fri’, ‘Sat’, ‘Sun’]

},

yAxis: {

type: ‘value’

},

series: [{

data: [150, 230, 224, 218, 135, 147, 260],

type: ‘line’

}]

}

function initChart(canvas, width, height, dpr) { // 這里的canvas,width,height,dpr都可以不用管

const chart = echarts.init(canvas, null, {

width: width,

height: height,

devicePixelRatio: dpr // 像素

});

canvas.setChart(chart);

chart.setOption(options);

return chart;

}

Page({

data: {

ec: {

onInit: initChart // 這里不要加括號哦!

}

}

});

保存運行,到這一步理論上echarts已經可以顯示了,實際怎么樣還要自己調試的。

用一個chart變量保存echarts的初始化,官網上把options也寫在方法里,我給拿出來了。

那chart有什么用呢?因為大部分的數(shù)據都是異步獲取的,所以要動態(tài)渲染echarts。當拿到數(shù)據后,這個chart就用上了。

chart.setOption({

xAxis: {

data: newData.map(item => {

return item[0];

})

},

series: {

data: newData.map(item => {

return item[1];

})

}

})

我們定義的data數(shù)據

data: {

isUseNewCanvas: true // 這里改成true, 默認是false

}

在組件中使用數(shù)據 2種方式

<!– 新的:接口對齊了H5 –>

<canvas wx:if=”{{isUseNewCanvas}}” type=”2d” class=”ec-canvas” canvas-id=”{{ canvasId }}” bindinit=”init” bindtouchstart=”{{ ec.disableTouch ? ” : ‘touchStart’ }}” bindtouchmove=”{{ ec.disableTouch ? ” : ‘touchMove’ }}” bindtouchend=”{{ ec.disableTouch ? ” : ‘touchEnd’ }}”></canvas>

<!– 舊的 –>

<canvas wx:else class=”ec-canvas” canvas-id=”{{ canvasId }}” bindinit=”init” bindtouchstart=”{{ ec.disableTouch ? ” : ‘touchStart’ }}” bindtouchmove=”{{ ec.disableTouch ? ” : ‘touchMove’ }}” bindtouchend=”{{ ec.disableTouch ? ” : ‘touchEnd’ }}”></canvas>

3. 分包加載

好,上面是我們使用echarts的使用步驟,但是echarts文件大小有500KB+ 它嚴重影響了我們項目打包大小,所以這里必須使用分包加載

在app.json里面,有一個subpackages

{

“subPackages”: [

{

“root”: “xxx/xxx”,

“name”: “xxx”,

“independent”: false,

“pages”: [

“pages/xxx”,

“pages/xxx”,

“pages/xxx”

]

},

{

“root”: “baoziTask/”,

“name”: “baozi”,

“pages”: [

“pages/roubaozi/roubaozi”

]

}

],

}

這個分包在官網上講得挺簡單的,但是在我使用時是這樣理解的。

root是要分包的路徑,放到根目錄的。那么baoziTask下的所有文件都會被認為是一個包。那不在這個baoziTask路徑下的文件都會被打包進app這個主包內。

name就是分包的別名,預下載的時候會用,這個預下載就當在某個頁面的時候,想主動下載這個可能被使用的分包,以提高訪問速度。

比如當我進入某個頁面的時候,很大可能會點擊某處跳轉到某個分包里面,這個時候可以預下載這個分包,而不用跳轉的時候才下載這個分包。

independent是分包是否獨立,但是我沒用過就沒有直觀的感覺。說是可以單獨運行,不依賴app這個主包。這個需要配置,不是代碼的下載,配置preloadRule,具體的話得看官網和自己嘗試了。

聲明:本文由網站用戶香香發(fā)表,超夢電商平臺僅提供信息存儲服務,版權歸原作者所有。若發(fā)現(xiàn)本站文章存在版權問題,如發(fā)現(xiàn)文章、圖片等侵權行為,請聯(lián)系我們刪除。

(0)
上一篇 2023年5月14日 20:12:40
下一篇 2023年5月14日 20:22:46

相關推薦

發(fā)表回復

您的電子郵箱地址不會被公開。 必填項已用*標注

在线不卡视频一区二区_91免费在线观看网站_国产视频在线看_91精品国产色综合久久
亚洲国产精品v| 亚洲欧美国产精品桃花| 在线一区日本视频| 亚洲精品国产品国语在线app | 亚洲欧美日韩专区| 一区二区三区www| 日韩一级在线观看| 一本色道久久综合狠狠躁篇的优点 | 黄网站免费久久| 国产一区二区三区免费在线观看 | 在线视频一区观看| 一区二区高清在线观看| 99精品国产在热久久婷婷| 日韩一级在线观看| 在线视频你懂得一区| 在线亚洲一区二区| 亚洲免费一区二区| 午夜一区二区三区不卡视频| 先锋影音一区二区三区| 性欧美18~19sex高清播放| 亚洲一级特黄| 欧美一级二区| 久久精品中文字幕免费mv| 久久一区免费| 欧美激情久久久| 欧美日韩日日骚| 国产精品啊啊啊| 国产精品亚洲第一区在线暖暖韩国| 国产女人精品视频| 国内精品久久久久影院色 | 欧美伊人久久大香线蕉综合69| 久久电影一区| 鲁大师成人一区二区三区| 欧美激情综合| 欧美性生交xxxxx久久久| 国产精品久久久一区二区| 国产亚洲欧洲| 亚洲国产高清aⅴ视频| 亚洲精一区二区三区| 中文久久乱码一区二区| 午夜精品久久久| 亚洲国产美女久久久久| aa日韩免费精品视频一| 午夜国产精品视频| 久久婷婷久久一区二区三区| 欧美日产一区二区三区在线观看| 国产精品视频一二三| 狠狠色综合网站久久久久久久| 亚洲精品久久久久久久久久久久 | 亚洲人成亚洲人成在线观看图片| 夜久久久久久| 久久国产直播| 在线视频精品一区| 久久久99久久精品女同性| 蜜桃视频一区| 国产精品久久久久久久久久久久久久 | 久久久久久综合| 欧美精品成人在线| 国产亚洲成年网址在线观看| 亚洲精品国精品久久99热| 性亚洲最疯狂xxxx高清| 一区二区三区精品在线| 久久久99国产精品免费| 国产精品国产a级| 亚洲激情校园春色| 欧美一区二区三区在线看| 在线视频欧美精品| 久久只精品国产| 国产精品美女久久久久久久 | 午夜影院日韩| 一区二区三区日韩欧美| 久久精品国产欧美激情| 欧美日韩在线精品一区二区三区| 国产在线精品自拍| 亚洲夜晚福利在线观看| 99精品视频免费观看| 久久午夜视频| 国产麻豆日韩欧美久久| 日韩亚洲综合在线| 亚洲欧洲日产国码二区| 欧美中文在线字幕| 欧美午夜精品久久久久久孕妇| 亚洲国产精品成人综合色在线婷婷| 午夜精品久久久| 亚洲欧美韩国| 欧美日韩成人在线视频| 怡红院精品视频在线观看极品| 亚洲欧美影音先锋| 亚洲一区二区三区国产| 欧美国产视频日韩| 激情欧美一区二区| 欧美一区=区| 午夜日韩激情| 国产精品久久久久影院亚瑟| 亚洲理论在线| 亚洲精品美女在线观看| 久久综合网hezyo| 国产综合婷婷| 欧美在线亚洲| 久久久精品动漫| 国产日韩欧美一区在线| 亚洲欧美国内爽妇网| 亚洲欧美国产日韩中文字幕| 欧美日韩免费一区二区三区| 亚洲理伦在线| 一区二区三区国产精华| 欧美激情亚洲视频| 91久久久久久| 一本久久a久久免费精品不卡| 欧美激情精品久久久久久蜜臀| 亚洲第一福利社区| 91久久综合亚洲鲁鲁五月天| 麻豆精品一区二区综合av| 狠狠色伊人亚洲综合成人| 久久福利电影| 老司机久久99久久精品播放免费 | 日韩视频一区二区| 欧美激情国产高清| 亚洲精品小视频| 洋洋av久久久久久久一区| 欧美精品成人| 99精品欧美一区二区三区| 亚洲无线视频| 国产精品国码视频| 亚洲天堂第二页| 午夜精品久久久久久99热| 国产精品午夜久久| 先锋影音网一区二区| 久久精品123| 韩日欧美一区二区三区| 亚洲国产成人av在线| 欧美电影免费观看| 亚洲另类一区二区| 亚洲一区视频在线| 国产精品综合视频| 久久国产精品久久国产精品| 老司机久久99久久精品播放免费| 亚洲国产精品毛片| 在线亚洲一区| 国产精品自在线| 亚洲福利小视频| 欧美激情精品久久久久久久变态| 99re热这里只有精品免费视频| 亚洲综合日韩中文字幕v在线| 国产精品视频yy9299一区| 午夜精品亚洲一区二区三区嫩草| 久久久久免费视频| 最新国产の精品合集bt伙计| 一区二区三区免费网站| 国产精品久久久久一区| 久久高清国产| 欧美精品久久久久久久久久| 一区二区三区福利| 久久精品国产亚洲5555| 亚洲国产人成综合网站| 亚洲一区免费| 精品成人一区| 亚洲天堂网站在线观看视频| 国产精品一区二区久久精品| 亚洲第一精品夜夜躁人人躁| 欧美久久久久久| 午夜精品一区二区三区电影天堂 | 久久青青草原一区二区| 亚洲国产欧美日韩精品| 亚洲影院色在线观看免费| 国产一区二区av| 日韩手机在线导航| 国产精品地址| 久久精品视频播放| 欧美日韩在线视频首页| 亚洲欧美日韩一区在线| 欧美二区乱c少妇| 亚洲欧美国产精品桃花| 欧美激情亚洲一区| 欧美一区二区视频在线观看| 欧美另类综合| 久久国产精品99国产| 欧美日韩另类在线| 欧美一区二区在线观看| 欧美日韩精品欧美日韩精品一| 午夜精品在线观看| 欧美日韩一视频区二区| 久久精品日产第一区二区三区 | 国产精品少妇自拍| 亚洲免费电影在线| 国产日韩欧美精品一区| 亚洲精品色图| 国产亚洲综合在线| 亚洲一区二区免费在线| 18成人免费观看视频| 欧美亚洲色图校园春色| 亚洲欧洲另类| 久久裸体视频| 亚洲欧美国产高清va在线播| 欧美日韩国产在线播放网站| 亚洲电影观看| 国产欧美一级| 亚洲性夜色噜噜噜7777| 亚洲福利视频三区| 久久另类ts人妖一区二区|