小程序webView功能探索

1,841 阅读1分钟

webView

1. webView域名需要在小程序后台的业务域名上绑定;

预览,体验版都会验证业务域名,远程调试不会验证业务域名;

2. webView src不支持动态更新(有时有问题有时没问题);

<web-view  src="https://***.**.com/?data={{data}}"></web-view>

要组织好完整url后赋值给src,这样肯定没问题了

<web-view  src="{{webViewUrl}}"></web-view>

3.无法刷新当前页面,需要重新赋值src;或者添加随机参数,但是返回时会有层级;

        reLoad() {
            this.webViewUrl = '';
            this.webViewUrl = 'https://www.baidu.com';
        }
        
        reLoad() {
            this.webViewUrl = 'https://www.baidu.com?params=1';
        }

4.分享回调的url是最开始打开的url,如果url有变化并不会拿到最新的;需要在web端将参数传递给小程序;

        wx.miniProgram.postMessage({ webViewUrl: window.location.href })

        onShareAppMessage(options) {
            var shareUrl = options.webViewUrl ? options.webViewUrl : this.defaultUrl;
            return {
                title: '标题',
                path: `pages/webView/index?webViewUrl=${encodeURIComponent(shareUrl)}`
            };
        }

注意:如果url上带了参数需要encode,分享后打开需要在onLoad decode;