当前位置: 首页 > wzjs >正文

网站开发能进无形资产吗南京seo关键词排名

网站开发能进无形资产吗,南京seo关键词排名,广州网站建设定制方案,wordpress没有重置密码链接相信大家尝试了很多方法都无法通信,现在我说一下我的开发经历和解决过程,包成功哈! 1:首先去webview熟读一下--发现webview用的是html,自己写的却是vue文件,我该如何书写呢? 2:翻到…

相信大家尝试了很多方法都无法通信,现在我说一下我的开发经历和解决过程,包成功哈!

1:首先去webview熟读一下--发现webview用的是html,自己写的却是vue文件,我该如何书写呢?

2:翻到一篇文章说是下载这个uni.webview.1.5.6.js玩意后引入,然后去调用里面的postMessage方法--发现报错不认识这个玩意里面的方法!

解决

1.首先uni.webview.1.5.6.js我不使用他的,你们去复制以下代码放入一个js文件代替它【比如uni.webview.111.js

!(function(global, factory) {'object' == typeof exports && 'undefined' != typeof module? (module.exports = factory()): 'function' == typeof define && define.amd? define(factory): ((global = global || self).hx = factory());
})(this, function() {'use strict';try {var passiveEventsSupport = {};Object.defineProperty(passiveEventsSupport, 'passive', {get: function() {return true;},}),window.addEventListener('test-passive', null, passiveEventsSupport);} catch (error) {}var hasOwnProperty = Object.prototype.hasOwnProperty;function hasProperty(object, property) {return hasOwnProperty.call(object, property);}var webviewIds = [];function getWeexPostMessage() {return window.__dcloud_weex_postMessage || window.__dcloud_weex_;}function getUniAppPostMessage() {return window.__uniapp_x_postMessage || window.__uniapp_x_;}var invokeAppService = function(action, payload) {var requestData = {options: {timestamp: +new Date(),},name: action,arg: payload,};if (getUniAppPostMessage()) {console.log('uniAppPostMessage');if ('postMessage' === action) {var messageData = {data: payload,};return getUniAppPostMessage()? getUniAppPostMessage()(messageData): window.__uniapp_x_.postMessage(JSON.stringify(messageData));}var serviceRequest = {type: 'WEB_INVOKE_APPSERVICE',args: {data: requestData,webviewIds: webviewIds,},};getUniAppPostMessage()? getUniAppPostMessage(): window.__uniapp_x_.postMessageToService(JSON.stringify(serviceRequest));} else if (getWeexPostMessage()) {console.log('weexPost');if ('postMessage' === action) {var messageDataForWeex = {data: [payload],};return getWeexPostMessage()? getWeexPostMessage()(messageDataForWeex): window.__dcloud_weex_.postMessage(JSON.stringify(messageDataForWeex));}var weexServiceRequest = {type: 'WEB_INVOKE_APPSERVICE',args: {data: requestData,webviewIds: webviewIds,},};getWeexPostMessage()? getWeexPostMessage()(weexServiceRequest): window.__dcloud_weex_.postMessageToService(JSON.stringify(weexServiceRequest));} else {if (!window.plus) {console.log('window.parent.postMessage');return window.parent.postMessage({type: 'WEB_INVOKE_APPSERVICE',data: requestData,pageId: '',},'*',);}if (webviewIds.length === 0) {var currentWebview = plus.webview.currentWebview();if (!currentWebview) throw new Error('plus.webview.currentWebview() is undefined');var parentWebview = currentWebview.parent();var webviewId = '';webviewId = parentWebview ? parentWebview.id : currentWebview.id;webviewIds.push(webviewId);}if (plus.webview.getWebviewById('__uniapp__service')) {console.log('postMessageToUniNView');plus.webview.postMessageToUniNView({type: 'WEB_INVOKE_APPSERVICE',args: {data: requestData,webviewIds: webviewIds,},},'__uniapp__service',);} else {console.log('localEvalJSMessage');var jsonRequestData = JSON.stringify(requestData);plus.webview.getLaunchWebview().evalJS('UniPlusBridge.subscribeHandler("WEB_INVOKE_APPSERVICE",' +jsonRequestData +',' +JSON.stringify(webviewIds) +');',);}}};var router = {navigateTo: function(options) {var params = options || {};var url = params.url;invokeAppService('navigateTo', {url: encodeURI(url),});},navigateBack: function(options) {var params = options || {};var delta = params.delta;invokeAppService('navigateBack', {delta: parseInt(delta) || 1,});},switchTab: function(options) {var params = options || {};var url = params.url;invokeAppService('switchTab', {url: encodeURI(url),});},reLaunch: function(options) {var params = options || {};var url = params.url;invokeAppService('reLaunch', {url: encodeURI(url),});},redirectTo: function(options) {var params = options || {};var url = params.url;invokeAppService('redirectTo', {url: encodeURI(url),});},getEnv: function(callback) {if (getUniAppPostMessage()) {callback({uvue: true,});} else if (getWeexPostMessage()) {callback({nvue: true,});} else if (window.plus) {callback({plus: true,});} else {callback({h5: true,});}},postMessage: function(options) {var params = options || {};invokeAppService('postMessage', params.data || {});},login: function(data) {data = data || {};data.action = 'login';invokeAppService('postMessage', data || {});},};var isUniApp = /uni-app/i.test(navigator.userAgent);var isHtml5Plus = /Html5Plus/i.test(navigator.userAgent);var isReadyStateComplete = /complete|loaded|interactive/;var isMyApp =window.my &&navigator.userAgent.indexOf(['t', 'n', 'e', 'i', 'l', 'C', 'y', 'a', 'p', 'i', 'l', 'A'].reverse().join('')) >-1;var isSwanApp = window.swan && window.swan.webView && /swan/i.test(navigator.userAgent);var isQQMiniProgram =window.qq &&window.qq.miniProgram &&/QQ/i.test(navigator.userAgent) &&/miniProgram/i.test(navigator.userAgent);var isToutiaoMiniProgram = window.tt && window.tt.miniProgram && /toutiaomicroapp/i.test(navigator.userAgent);var isWeChatMiniProgram =window.wx &&window.wx.miniProgram &&/micromessenger/i.test(navigator.userAgent) &&/miniProgram/i.test(navigator.userAgent);var isQuickApp = window.qa && /quickapp/i.test(navigator.userAgent);var isKuaishouMiniProgram =window.ks &&window.ks.miniProgram &&/micromessenger/i.test(navigator.userAgent) &&/miniProgram/i.test(navigator.userAgent);var isFeishuMiniProgram = window.tt && window.tt.miniProgram && /Lark|Feishu/i.test(navigator.userAgent);var isJDminiProgram = window.jd && window.jd.miniProgram && /jdmp/i.test(navigator.userAgent);var isXhsMiniProgram = window.xhs && window.xhs.miniProgram && /xhsminiapp/i.test(navigator.userAgent);for (var handler,initHandler = function() {window.UniAppJSBridge = true;document.dispatchEvent(new CustomEvent('UniAppJSBridgeReady', {bubbles: true,cancelable: true,}),);},eventHandlers = [function(callback) {if (isUniApp || isHtml5Plus)return (getUniAppPostMessage() || getWeexPostMessage()? document.addEventListener('DOMContentLoaded', callback): window.plus && isReadyStateComplete.test(document.readyState)? setTimeout(callback, 0): document.addEventListener('plusready', callback),router);},function(callback) {if (isWeChatMiniProgram)return (window.WeixinJSBridge && window.WeixinJSBridge.invoke? setTimeout(callback, 0): document.addEventListener('WeixinJSBridgeReady', callback),window.wx.miniProgram);},function(callback) {if (isQQMiniProgram)return (window.QQJSBridge && window.QQJSBridge.invoke? setTimeout(callback, 0): document.addEventListener('QQJSBridgeReady', callback),window.qq.miniProgram);},function(callback) {if (isMyApp) {document.addEventListener('DOMContentLoaded', callback);var myApp = window.my;return {navigateTo: myApp.navigateTo,navigateBack: myApp.navigateBack,switchTab: myApp.switchTab,reLaunch: myApp.reLaunch,redirectTo: myApp.redirectTo,postMessage: myApp.postMessage,getEnv: myApp.getEnv,};}},function(callback) {if (isSwanApp) return document.addEventListener('DOMContentLoaded', callback), window.swan.webView;},function(callback) {if (isToutiaoMiniProgram)return document.addEventListener('DOMContentLoaded', callback), window.tt.miniProgram;},function(callback) {if (isQuickApp) {window.QaJSBridge && window.QaJSBridge.invoke? setTimeout(callback, 0): document.addEventListener('QaJSBridgeReady', callback);var qaApp = window.qa;return {navigateTo: qaApp.navigateTo,navigateBack: qaApp.navigateBack,switchTab: qaApp.switchTab,reLaunch: qaApp.reLaunch,redirectTo: qaApp.redirectTo,postMessage: qaApp.postMessage,getEnv: qaApp.getEnv,};}},function(callback) {if (isKuaishouMiniProgram)return (window.WeixinJSBridge && window.WeixinJSBridge.invoke? setTimeout(callback, 0): document.addEventListener('WeixinJSBridgeReady', callback),window.ks.miniProgram);},function(callback) {if (isFeishuMiniProgram)return document.addEventListener('DOMContentLoaded', callback), window.tt.miniProgram;},function(callback) {if (isJDminiProgram)return (window.JDJSBridgeReady && window.JDJSBridgeReady.invoke? setTimeout(callback, 0): document.addEventListener('JDJSBridgeReady', callback),window.jd.miniProgram);},function(callback) {if (isXhsMiniProgram) return window.xhs.miniProgram;},function(callback) {return document.addEventListener('DOMContentLoaded', callback), router;},],i = 0;i < eventHandlers.length && !(handler = eventHandlers[i](initHandler));i++);handler || (handler = {});var hxAPI = 'undefined' != typeof hx ? hx : {};if (!hxAPI.navigateTo) for (var key in handler) hasProperty(handler, key) && (hxAPI[key] = handler[key]);return (hxAPI.webView = handler), hxAPI;
});

js文件

2.其次你写了个网页【.vue文件】,在该网页页面中引入该uni.webview.111.js

【import uniWeb from '@/uni.webview.111.js'】

3.将你需要传给app的数据写进去,一定是data里面放入你想传的数据!!

fn()
{
let commentData={title:'你好'}
uniWeb.postMessage({data: {xxx: 'xxx',xxx: 'xxx',commentData,},});
//总之格式是这样子
uniWeb.postMessage({data: {xxx},});
}

网页代码

4.app代码写法如下

首先是肯定考虑头部导航栏,你得设top距离给网页【也就是webviewStyles】,其次网页传过来的数据是靠webview标签中的 @onPostMessage="handleMessage"得到的【也就是数据监听】

app代码

其次获取到当前网页实例

app代码

然后在事件监听的函数接收网页传来的数据

app代码

最后app想传数据给网页的话,写法如下【getAPPMsg就是传过去的函数】

app代码

然后网页去监听这个函数就可以拿到e,也就是app给网页的数据

网页代码

http://www.dtcms.com/wzjs/108265.html

相关文章:

  • 网站服务器多少钱一年香港头条新闻
  • 聊城做网站的公司信息网站怎么开发
  • 巫溪集团网站建设兰州百度推广的公司
  • 沧州wap网站制作十大最靠谱教育培训机构
  • 福州网站设计哪家比较好关键词优化是怎么弄的
  • 济宁网站建设 中企动力临沂南通seo网站优化软件
  • 网页游戏 手机铁力seo
  • 深圳方维网站设计公司全国最新实时大数据
  • git怎么做隐私政策网站南宁网站seo排名优化
  • 安全狗iis 网站css无法访问石家庄seo
  • 最容易做流量的网站微信指数是什么意思
  • wordpress4.5注册插件网站关键词优化排名技巧
  • 商丘做网站建设app开发流程
  • 常德德山经开区建设局网站百度小说
  • 飞沐网站建设怎么做互联网推广
  • 浙江外贸网站建设百度seo搜索
  • 郑州网站建设知名公司排名交换链接营销案例
  • 政府网站建设 调研报告上海seo优化外包公司
  • 怎样在手机上做动漫视频网站站长工具查询网
  • 常德网站优化举例说明seo
  • jquery做的网站免费网站模板网
  • 建筑模板尺寸徐州seo外包公司
  • 网站建设主页让顾客心动的句子
  • 网站建设多少钱鞋做一个自己的网站
  • 网站内容不显示不出来免费网站制作教程
  • 福州网站建设公司哪家比较好广州推广引流公司
  • 网站程序风格网络营销概念
  • 亿建联网站是谁做的杭州互联网公司排名榜
  • 老干部活动中心网站建设方案抖音优化是什么意思
  • 发泡机 东莞网站建设免费外链代发平台