国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

uniApp開發(fā)微信小程序 異步加載外部JS應(yīng)用

這篇具有很好參考價(jià)值的文章主要介紹了uniApp開發(fā)微信小程序 異步加載外部JS應(yīng)用。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

由于微信小程序的限制,上線代碼包不能超過2M,一般業(yè)務(wù)只是做界面展示與交互的話,這個(gè)大小其實(shí)完全夠用的,但是當(dāng)我們想要使用echarts這樣的圖表插件時(shí),代碼包很容易就超了。那么我們?cè)诓皇褂梅职夹g(shù)的情況下,也可以考慮使用we-script這個(gè)功能組件來實(shí)現(xiàn)異步加載外部JS資源。

關(guān)于we-script

we-script 讓微信小程序支持加載執(zhí)行遠(yuǎn)程 JavaScript 腳本,突破小程序無法動(dòng)態(tài)執(zhí)行代碼的限制,支持 ES5 語法。gitee及文檔傳送門,需注意的是,這個(gè)方案只適用與微信小程序,如果希望支持其他小程序的話,可以考慮研究源碼并實(shí)現(xiàn)相對(duì)應(yīng)的功能,或者使用更好的方案,歡迎一起交流。

關(guān)于uniApp開發(fā)微信小程序

學(xué)習(xí)了we-script的應(yīng)用之后,我們會(huì)發(fā)現(xiàn)其并不能直接在uniApp中使用。那么我們需要特殊處理一下。這個(gè)方案稍微的有一些麻煩,希望有朋友可以提供更好的解決方案。下面我們開始使用。

實(shí)戰(zhàn)

步驟1:下載

省去微信開發(fā)者工具 構(gòu)建 npm 這個(gè)步驟,我把構(gòu)建之后生成的包壓縮放在夸克網(wǎng)盤中,歡迎點(diǎn)擊下載,提取碼:vryR。

下載之后,將里面文件放在uni-app開發(fā)項(xiàng)目的 static 文件夾中(wxcomponents 那個(gè)方案我嘗試過了,并不好用),放在這個(gè)文件中是因?yàn)檫@個(gè)文件夾中的所有文件夾中的文件不會(huì)被編譯。如下圖所示,注意miniprogram_npm中一共有3個(gè)文件夾。
uniapp 小程序引入外部js,uni-app,微信小程序,小程序

步驟2:代碼

1、在文件 pages.json 中,給需要引用這個(gè)組件的頁面配置組件,代碼如下:

{
	"pages": [
		//pages數(shù)組中第一項(xiàng)表示應(yīng)用啟動(dòng)頁,參考:https://uniapp.dcloud.io/collocation/pages
		{
			"path": "pages/index/index", 
			"style": {}
		}, 
	    {
	      "path": "pages/index/siteDetail",
		  "style": {
	        // #ifdef MP-WEIXIN || MP-QQ
	        "usingComponents": {
	          "we-script": "we-script" // 組件引入!?。。?!
	        }
	        // #endif
	      }
	    }
	],
	"usingComponts": true
	// 其他屬性
	// ......
}

2、在頁面中使用組件 示例文件 siteDetail.vue , 示例功能是 引入echarts 并應(yīng)用

<template name="siteDetail"> 
  <view class="page">
  	<!--調(diào)用組件,傳入資源鏈接,并綁定事件-->
    <we-script @onLoad="loadScript" src="https://cdn.bootcdn.net/ajax/libs/echarts/5.4.2/echarts.min.js"></we-script>
    <view style="width: 100%; height:300rpx">
      <l-echart ref="chart"></l-echart>
    </view>
  </view>
</template>

<script>
  import { mapGetters } from 'vuex';
  import api from './api.js'
  // import * as echarts from '@/uni_modules/lime-echart/static/echarts.min' // 最開始時(shí)從項(xiàng)目中引入的
  
  export default {
    data() {
      return {
        chartsData: [],
      }
    },
    onLoad(option) { },
    methods: {
      // JS加載完成后執(zhí)行
      loadScript(e) {
        // console.log(e)
        // 最開始的時(shí)候,init方法的第一個(gè)參數(shù)是echarts ,現(xiàn)在是 e.detail.context.echarts
        this.$refs.chart.init(e.detail.context.echarts, chart => {
          this.getChartsData(); // 初始化后獲取數(shù)據(jù)
        });
      },
      // 渲染圖表
      setCharts() {
        let option = {
		  // echarts 配置項(xiàng)
        }
        this.$refs.chart.clear()
        this.$refs.chart.setOption(option)
      },
      // 獲得圖標(biāo)的數(shù)據(jù)
      getChartsData() {
        api.getChartsData().then(({ success, result }) => {
          if (success) { 
            this.chartsData = result || []
            this.setCharts()
          }
        })
      },
    },
  }
</script>

<style></style>

示例中 l-echart 是個(gè)圖標(biāo)組件,有興趣的朋友這里提供一個(gè) 傳送門 。

步驟3:編譯運(yùn)行

1、功能寫好后,運(yùn)行到微信小程序 或 發(fā)行到微信小程序
uniapp 小程序引入外部js,uni-app,微信小程序,小程序uniapp 小程序引入外部js,uni-app,微信小程序,小程序
2、微信開發(fā)者功能運(yùn)行起來之后,要把 miniprogram_npm 這個(gè)文件夾放到微信開發(fā)目錄的根目錄中。
移動(dòng)前
uniapp 小程序引入外部js,uni-app,微信小程序,小程序
移動(dòng)后
uniapp 小程序引入外部js,uni-app,微信小程序,小程序
3、運(yùn)行結(jié)果:可以看到j(luò)s通過網(wǎng)絡(luò)請(qǐng)求的方式加載了,并且頁面的圖表也正常展示了。
uniapp 小程序引入外部js,uni-app,微信小程序,小程序

結(jié)語

開發(fā)學(xué)習(xí)無止境,小小功能要老命。歡迎交流?。?!文章來源地址http://www.zghlxwxcb.cn/news/detail-537906.html

到了這里,關(guān)于uniApp開發(fā)微信小程序 異步加載外部JS應(yīng)用的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uniapp開發(fā)微信小程序教程(一)

    uniapp開發(fā)微信小程序教程(一)

    微信小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或者搜一下即可打開應(yīng)用。也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時(shí)可用,但又無需安裝卸載。 我們身邊的小程序:例如

    2024年02月14日
    瀏覽(34)
  • uniapp 開發(fā)微信小程序 頭部適配

    在 UniApp 中,在微信小程序開發(fā)中,頭部適配可以通過修改 pages.json 中的 navigationStyle 配置項(xiàng)來實(shí)現(xiàn),具體操作步驟如下: 進(jìn)入 pages.json 文件 在 UniApp 項(xiàng)目的根目錄中找到 pages.json 文件,打開該文件。 修改 navigationStyle 配置項(xiàng) 在 pages.json 文件中,可以為每一個(gè)頁面單獨(dú)設(shè)置導(dǎo)

    2024年02月14日
    瀏覽(21)
  • uniapp開發(fā)微信小程序阻止事件冒泡

    uniapp開發(fā)微信小程序阻止事件冒泡

    ? ? 最近在使用uniapp去開發(fā)微信小程序 ? ? 其中不乏遇到一些問題,我都會(huì)發(fā)出來。 ? ? 萬一自己別的時(shí)候忘記,但是需要用了。 ? uniapp中開發(fā)微信小程序,當(dāng)使用? @click.stop? ?? 去阻止事件冒泡的時(shí)候 會(huì)發(fā)現(xiàn), @click.stop? 并沒有生效,就很神奇 問題如圖: 解決問題方案

    2024年02月12日
    瀏覽(88)
  • uniapp開發(fā)微信小程序使用高德地圖

    uniapp? 官方文檔?地圖組件控制??地圖組件 高德地圖key需要公司去申請(qǐng),之后自己在下載高德地圖微信小程序插件 下好的js文件放在項(xiàng)目中,之后在vue項(xiàng)目中的main.js文件中全局注入 頁面引入并使用

    2024年02月15日
    瀏覽(88)
  • uniapp開發(fā)微信小程序-2.頁面制作

    uniapp開發(fā)微信小程序-2.頁面制作

    往期文章: uniapp開發(fā)微信小程序-1.工具和本地環(huán)境 uniapp開發(fā)微信小程序-2.頁面制作 一、項(xiàng)目配置 開發(fā)層級(jí)結(jié)構(gòu): 左側(cè)是基礎(chǔ)開發(fā),右側(cè)是uniapp開發(fā)。經(jīng)過對(duì)比,我們只需要掌握了vue框架就可以直接開發(fā),通過uniapp運(yùn)行到微信開發(fā)者工具即可自動(dòng)編譯成微信小程序基礎(chǔ)開發(fā)

    2024年02月09日
    瀏覽(21)
  • uniapp開發(fā)微信小程序分包處理實(shí)錄

    uniapp開發(fā)微信小程序分包處理實(shí)錄

    ????????uniapp開發(fā)微信小程序上傳代碼時(shí)可能會(huì)遇到項(xiàng)目過大問題,今天就結(jié)合自己的實(shí)際操作簡(jiǎn)單記錄下如何處理項(xiàng)目代碼超出限制問題。 ????????常用的操作就是將項(xiàng)目中的圖片訪問由本地訪問修改為網(wǎng)絡(luò)訪問,微信開發(fā)者工具上傳代碼時(shí)勾選相關(guān)的壓縮文件選項(xiàng)

    2024年02月03日
    瀏覽(22)
  • uniapp開發(fā)微信小程序,主包(分包超過限制)

    uniapp開發(fā)微信小程序,主包(分包超過限制)

    嘀嘀嘀? ~? 和大家分享一下? 最近的uniapp開發(fā)微信小程序? 在真機(jī)調(diào)試 或者在上傳的時(shí)候 提示主包或者分包 大小超過限制 ? 首先和大家說一下? 微信小程序? 主包限制不能超過2M? ? ?分包一共不能超過8M(好像是記不太清了) 然后具體解決優(yōu)化步驟如下, 1.? ?將主包進(jìn)

    2024年02月15日
    瀏覽(89)
  • uniapp 開發(fā)微信小程序之新版隱私協(xié)議

    uniapp 開發(fā)微信小程序之新版隱私協(xié)議

    自從微信小程序官方更新隱私協(xié)議,用戶必須同意之后,才能獲取個(gè)人信息,這就導(dǎo)致在獲取用戶信息之前,需要有個(gè)隱私協(xié)議彈窗 大致如下圖: 微信小程序官方提供的API和 uniapp 開發(fā)的稍微有點(diǎn)區(qū)別,這里只記錄 uniapp 開發(fā)的,如果需要微信原生的,請(qǐng)自行官網(wǎng)查看。 首先

    2024年02月09日
    瀏覽(25)
  • uniapp 開發(fā)微信小程序 樣式穿透問題解決

    uniapp 開發(fā)微信小程序 樣式穿透問題解決

    微信文檔:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/wxml-wxss.html#%E7%BB%84%E4%BB%B6%E6%A0%B7%E5%BC%8F%E9%9A%94%E7%A6%BB 問題:父組件中修改子組件 /deep/ H5中生效,但是在微信小程序不生效。 解決:在script中添加styleIsolation: ‘shared’,即可解決 如圖:

    2024年02月12日
    瀏覽(90)
  • uniapp開發(fā)微信小程序自定義tabbar

    uniapp開發(fā)微信小程序自定義tabbar

    第一步:在pages.json里定義自己tabbar路徑,定義的時(shí)候只需要寫上頁面路徑即可 ?第二步:自定義tabbar頁面,為了實(shí)現(xiàn)點(diǎn)擊動(dòng)作的動(dòng)態(tài)效果,需要用到watch監(jiān)聽父組件傳來的值的改變 ?自定義tabbar頁面全部代碼 注:該頁面可以直接用組件的方式來放,因?yàn)閡niapp支持easycom模式,

    2024年02月11日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包