uniapp与webview之间的相互传值的实现


Posted in Javascript onJune 29, 2020

1.uni-app 如何发送数据到 H5? 其实很接单、在 web-view 中只需要通过 URL 就可以向 H5 进行传参 例如在 uni-app 中:

<template>
  <view class="advertisement" style="width: 100%;">
    <web-view :src="url" @message="message"></web-view>
  </view>
</template>
 
<script>
export default {
  data() {
    return {
      url:'/hybrid/html/local.html?data='
    };
  },
  onLoad(data) {<br>



//这里对要传入到webview中的参数进行encodeURIComponent编码否则中文乱码
    this.url+=encodeURIComponent(data.data)
  },
  mounted() {},
  methods: {
    message(event){
      console.log(event.detail.data);
    }
  }
};
</script>
 
<style scoped="scoped" lang="scss">
@import './advertisement.scss';
</style>

那么在 H5 中是如何接收值得呢?

console.log(getQuery('data')); //获取 uni-app 传来的值
            
      //取url中的参数值
      function getQuery(name) {
        // 正则:[找寻'&' + 'url参数名字' = '值' + '&']('&'可以不存在)
        let reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
        let r = window.location.search.substr(1).match(reg);
        console.log(r);
        if(r != null) {
          // 对参数值进行解码
          return decodeURIComponent(r[2]);
        }
        return null;
      }

2.webview向uniapp传值

<script>
  document.addEventListener('UniAppJSBridgeReady', function() {
    //向uniapp传值
    uni.postMessage({
      data: {
        action: 'message'
      }
    });
    uni.getEnv(function(res) {
      console.log('当前环境:' + JSON.stringify(res));
    });
  });
</script>

uniapp接受

//message接受方法

<template>
  <view class="advertisement" style="width: 100%;">
    <web-view :src="url" @message="message"></web-view>
  </view>
</template>

到此这篇关于uniapp与webview之间的相互传值的实现的文章就介绍到这了,更多相关uniapp与webview相互传值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
学习YUI.Ext 第六天--关于树TreePanel(Part 1)
Mar 10 Javascript
jquery ajax跨域解决方法(json方式)
Feb 04 Javascript
JavaScript中的ArrayBuffer详细介绍
Dec 08 Javascript
JavaScript AOP编程实例
Jun 16 Javascript
BootStrap智能表单实战系列(八)表单配置json详解
Jun 13 Javascript
JS实现数组简单去重及数组根据对象中的元素去重操作示例
Jan 05 Javascript
用react-redux实现react组件之间数据共享的方法
Jun 08 Javascript
Angular5集成eventbus的示例代码
Jul 19 Javascript
详解如何使用node.js的开发框架express创建一个web应用
Dec 20 Javascript
使用layui定义一个模块并使用的例子
Sep 14 Javascript
Vue 使用beforeEach实现登录状态检查功能
Oct 31 Javascript
javascript实现贪吃蛇小练习
Jul 05 Javascript
基于Element封装一个表格组件tableList的使用方法
Jun 29 #Javascript
iview实现图片上传功能
Jun 29 #Javascript
vue+animation实现翻页动画
Jun 29 #Javascript
vue+element实现图片上传及裁剪功能
Jun 29 #Javascript
vue实现匀速轮播效果
Jun 29 #Javascript
vant实现购物车功能
Jun 29 #Javascript
js实现随机点名器精简版
Jun 29 #Javascript
You might like
深入php var_dump()函数的详解
2013/06/05 PHP
PHP设置一边执行一边输出结果的代码
2013/09/30 PHP
smarty获得当前url的方法分享
2014/02/14 PHP
php关键字仅替换一次的实现函数
2015/10/29 PHP
PHP编程入门的基本语法知识点总结
2016/01/26 PHP
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
2007/04/12 Javascript
Javascript var变量隐式声明方法
2009/10/19 Javascript
网络图片延迟加载实现代码 超越jquery控件
2010/03/27 Javascript
JS回调函数的应用简单实例
2014/09/17 Javascript
浅谈JavaScript Date日期和时间对象
2014/12/29 Javascript
基于jQuery实现的菜单切换效果
2015/10/16 Javascript
JS中取二维数组中最大值的方法汇总
2016/04/17 Javascript
使用jQuery判断浏览器滚动条位置的方法
2016/05/30 Javascript
jquery validate表单验证插件
2016/09/06 Javascript
ajax异步请求详解
2017/01/06 Javascript
js使用html2canvas实现屏幕截取的示例代码
2017/08/28 Javascript
今天,小程序正式支持 SVG
2019/04/20 Javascript
使用Phantomjs和Node完成网页的截屏快照的方法
2019/07/16 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
基于JS实现计算24点算法代码实例解析
2020/07/23 Javascript
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
Python标准库内置函数complex介绍
2014/11/25 Python
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
python中常用的九种预处理方法分享
2016/09/11 Python
分享一个可以生成各种进制格式IP的小工具实例代码
2017/07/28 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
2019/07/04 Python
PyCharm中代码字体大小调整方法
2019/07/29 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
Python控制台实现交互式环境执行
2020/06/09 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
Python中过滤字符串列表的方法
2020/12/22 Python
韩国乐天网上商城:Lotte iMall
2021/02/03 全球购物
联强国际笔试题面试题
2013/07/10 面试题
超市优秀员工获奖感言
2014/08/15 职场文书
初中生散播谣言检讨书
2014/11/17 职场文书