美文网首页
vue3.0 前端和客户端混合开发

vue3.0 前端和客户端混合开发

作者: 博尔茨杰 | 来源:发表于2022-10-22 19:45 被阅读0次

1.客户端发送消息

iOS给前端发送消息

self.mainWebView.evaluateJavaScript("appCallJsListInit()") { object, error in

}               
image.png

vue3.0中接收客户端发送消息(在index.html中)

<script>
function appCallJsListInit(e) {

}
</script>

前端接收客户端发送消息(在子页面中)

<script>
export default {
  name: "",
  components: {},
  setup(props, context) {
    window["appCallJsListInit"] = (e) => {
    };
    return {
    };
  },
};
</script>

2.客户端接收消息

前端给客户端发送消息

<script>
import { onMounted } from "vue";

let u = navigator.userAgent; //判断浏览器型号
let isAndroid = u.indexOf("Android") > -1 || u.indexOf("Adr") > -1; //android终端
let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端

export default {
  name: "",
  components: {},
  setup(props, context) {

    onMounted(() => {
      if (isiOS) {
        window.webkit.messageHandlers.jsCallAppInit.postMessage("");
      } else {
        window.wst.jsCallAppInit("");
      }
    });

    return {
    };
  },
};
</script>

iOS接收前端发送的消息

    override func viewWillAppear(_ animated: Bool) {
        
        mainWebView.configuration.userContentController.add(self, name: "jsCallAppInit")
 
    }
    
    override func viewDidDisappear(_ animated: Bool) {
        super.viewDidDisappear(animated)
       mainWebView.configuration.userContentController.removeScriptMessageHandler(forName: "jsCallAppInit")
 
    }

   func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {

        switch message.name {
        case "jsCallAppInit":
            //初始化
            requestInitData()
 
        default: break
        }
    }

相关文章

  • Hybrid App开发

    一、Hybrid,为什么用?简介:hybrid即“混合”,即前端和客户端的混合开发需前端开发人员和客户端(原生io...

  • vue3.0 前端和客户端混合开发

    1.客户端发送消息 iOS给前端发送消息 vue3.0中接收客户端发送消息(在index.html中) 前端接收客...

  • hybrid学习笔记

    hybrid是什么 hybrid也就是前端和客户端的混合开发。简单的说就是客户端通过webview组件使用file...

  • Hybrid是什么?

    前端和客户端混合开发不能用ajax js向客户端请求数据Hybrid一套代码公用 ios安卓Hybrid开发效率高...

  • Android—WebView加载速度优化工程实践

    一、混合开发的优势与缺陷 在混合开发大行其道的今天,很多页面和功能都转由前端实现,客户端只要在APP中嵌入一个We...

  • Vue基础

    相关概念 混合开发和前后端分离 混合开发(服务器端渲染) 前后端分离后端提供接口,前端开发界面效果(专注于用户的交...

  • Hybrid App 框架之Apicloud (白话篇)

    Hybrid App(混合app)就是将原生技术(android,ios)和前端技术结合开发的出来的app,开发成...

  • HTML基础

    新的征程 web前端介绍 web前端开发做什么 pc端web开发;移动端web开发;混合app开发;网页游戏/移动...

  • 什么是 Vite

    Vite 是 vue 的作者尤雨溪在开发 vue3.0 的时候开发的一个 基于原生 ES-Module 的前端构建...

  • 你了解Vite吗?

    Vite 是 vue 的作者尤雨溪在开发 vue3.0 的时候开发的一个 基于原生 ES-Module 的前端构建...

网友评论

      本文标题:vue3.0 前端和客户端混合开发

      本文链接:https://www.haomeiwen.com/subject/mjhbzrtx.html