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 相关文章推荐
js实现的倒计时按钮实例
Jun 24 Javascript
微信小程序 for 循环详解
Oct 09 Javascript
jQuery实现加入收藏夹功能(主流浏览器兼职)
Dec 24 Javascript
Angular2 组件间通过@Input @Output通讯示例
Aug 24 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
Feb 09 Javascript
Node.Js生成比特币地址代码解析
Apr 21 Javascript
原生实现一个react-redux的代码示例
Jun 08 Javascript
vue使用keep-alive保持滚动条位置的实现方法
Apr 09 Javascript
微信小程序—setTimeOut定时器的问题及解决
Jul 26 Javascript
微信小程序实现签字功能
Dec 23 Javascript
在Vue.js中使用TypeScript的方法
Mar 19 Javascript
JavaScript实现班级抽签小程序
May 19 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+mcDropdown实现文件路径可在下拉框选择
2013/08/07 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
php实现留言板功能(会话控制)
2017/05/23 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
Javascript实现的SHA-256加密算法完整实例
2016/02/02 Javascript
jQuery实现简单的DIV拖动效果
2016/02/19 Javascript
BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)
2016/07/07 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
jQuery实现图片滑动效果
2017/03/08 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
使用vue 国际化i18n 实现多实现语言切换功能
2018/10/11 Javascript
js实现碰撞检测
2021/01/29 Javascript
[02:34]肉山说——泡妞篇
2014/09/16 DOTA
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
python人人网登录应用实例
2014/09/26 Python
python实现的系统实用log类实例
2015/06/30 Python
django之常用命令详解
2016/06/30 Python
Python实现去除列表中重复元素的方法小结【4种方法】
2018/04/27 Python
对python多线程中Lock()与RLock()锁详解
2019/01/11 Python
详解Python3中setuptools、Pip安装教程
2019/06/18 Python
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
阿拉伯世界最大的电子商务网站:Souq沙特阿拉伯
2016/10/28 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
护理学毕业生自荐信
2013/10/02 职场文书
业务代表的岗位职责
2013/11/16 职场文书
开学典礼主持词
2014/03/19 职场文书
雷人标语集锦
2014/06/19 职场文书
高校自主招生自荐信2015
2015/03/04 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
惹女朋友生气检讨书
2015/05/06 职场文书
离婚代理词范文
2015/05/23 职场文书
python b站视频下载的五种版本
2021/05/27 Python
Python Pandas pandas.read_sql函数实例用法
2021/06/21 Python
vue3种table表格选项个数的控制方法
2022/04/14 Vue.js