wechat-小程式web-view與網頁互動
阿新 • • 發佈:2018-11-05
wechat-小程式web-view與網頁互動.
官方api說明文件: https://developers.weixin.qq.com/miniprogram/dev/component/web-view.html
前置物料
- 啟動好一個網頁服務. 比如: http://localhost/SimpleThreeJsExample/index-wx.html
步驟
-
在Pages下 新建一個 小程式頁面. (四件套)
-
web001.wxml
<view class="container"> <
- myWebUrl: 在程式上動態設定的目的 網頁地址
- msgHandler: 處理網頁返回的資訊
-
web001.js
import { gLog } from '../../src/module/log/Logger.js'; // 我自己封裝的日誌 Page({ data: { // 初始化 web001.wxml 中的初始資料 myWebUrl: "" },
-
-
網頁 index-wx.html 引入 jweixin-1.3.2.js.
hello world <!-- for 微信小程式 web-view --> <script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script> <script type="text/javascript" src="asset/js/wx/wx-logic.js"></script> <!-- 自定義邏輯程式碼 -->
-
wx-logic.js. 邏輯程式碼都丟到裡面.
console.log("--- wx-logic ok") document.querySelector('#redirect').addEventListener('click', () => { wx.miniProgram.redirectTo({ // 呼叫小程式api url: '../index/index' }) // wx.miniProgram.navigateBack({ // delta: 1 // }) }, false); // 獲取網路引數 function GetRequest() { var url = location.search; //獲取url中"?"符後的字串 var theRequest = new Object(); if (url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for(var i = 0; i < strs.length; i ++) { theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]); } } return theRequest; } var args = GetRequest(); console.log("--- args", args) args.webData = "world" // 隨便增加點web的資料 // 向小程式傳送資訊 wx.miniProgram.getEnv(function (res) { console.log(res.miniprogram) // true if (res.miniprogram) { wx.miniProgram.postMessage({ data: args, args: args }) console.log("asdasdasd") } else { console.log("just support wx") } }) // TODO: 直接顯示模型 const threeHelper22 = new ThreeHelper(); threeHelper22.loadObject('asset/model/aaa002.fbx');
-
-
測試.
-
內網測試. 在小程式工具中 需要勾選 不校驗 業務域名 驗證
-
外網: TODO:
-
執行
-
參考
- https://blog.csdn.net/laishaojiang/article/details/82181952
- https://blog.csdn.net/qq_37235231/article/details/82053062
ps
- 小程式中暫時不能輸出 網頁端 的log.(知道麻煩告訴我一下下)