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

东营做网站优化价格企业网站开发一般多少钱

东营做网站优化价格,企业网站开发一般多少钱,wordpress 简历,查企业资质上什么网站背景 近期有个微信小程序需要用到web-view嵌套H5的场景#xff0c;该应用场景需要小程序中频繁传递数据到H5进行渲染#xff0c;且需要保证页面不刷新。 由于微信小程序与H5之间的通信限制比较大#xff0c;显然无法满足于我的业务场景 探索 由于微信小程序与webview的环境是…背景 近期有个微信小程序需要用到web-view嵌套H5的场景该应用场景需要小程序中频繁传递数据到H5进行渲染且需要保证页面不刷新。 由于微信小程序与H5之间的通信限制比较大显然无法满足于我的业务场景 探索 由于微信小程序与webview的环境是完全隔离的且没有突破的地方只能将关键点放在已开放的方式上来中间有利用公共存储空间cookie、SessionStorage和LocalStorage但是很遗憾无法突破后面也采用websocket利用服务器来进行双向交互但是由于网络的不稳定性导致数据可能会有一定的延迟。 思路 既然小程序只能通过改变url链接来向H5传递参数那么我就动态改变url来传递即可但是还需要解决的问题是一旦改变url页面会重新加载这个是不能接受的。 路由的hash模式正好可以做到这一点那么我们通过动态改变url的hash值H5页面监听hash值的变化就能完美解决该问题了话不多说直接开干。 实战 小程序 web-view代码 web-view src{{url}}{{hashStr}}/web-view 小程序js代码代码通过setInterval模拟实时传递不同参数到H5 Component({data: {url: http://127.0.0.1:8080/home?typewx,hashStr: ,},methods: {onLoad: function () {const _this this; setInterval(() {//此处模拟动态改变url的hash值给h5传值const postData{name: zhangsan,time: new Date()}_this.setData({hashStr:#time${JSON.stringify(postData)}})}, 2000);},} }); 注意hashStr的值必须以#开始浏览器才会识别为hash,否则无效 H5应用 在js中添加一个hashchange监听window.location.hash的变化即可 window.onhashchange function() {console.log(The hash has changed!);const newHash window.location.hash;console.log(New hash:, newHash); }; 以上方式即可完美解决我的应用场景 以为结束了其实还没有上面的方式的确可行但是我是vue项目呀其中还用到了vue-router组件通过上述直接监听页面还是会刷新 由于使用了vue-router插件那么hash的变化vue-router会默认通过hash来进行导航也会加载刷新页面所以我们还需要设置一个路由守卫用来判断如果path没有变化只是hash改变则不进行导航具体配置如下 import {createRouter, createWebHashHistory} from vue-router;const routes [ {path: /home,name: home,component: () import(../components/Home.vue)}, ] const router createRouter({history: createWebHashHistory(),routes });router.beforeEach((to, from, next) {if (to.pathfrom.path) { next(false); // 阻止导航行为} else {next(); // 正常导航} });export default router; 注意点 1、微信小程序会对url进行decodeURIComponent编码故在解析的的时候注意使用encodeURIComponent解码 2、如果动态改变url的hash频率过快由于vue-router在内部调用了history.replaceState(),如果太频繁会触发浏览器的安全策略抛出一个SecurityError错误这个可能是我的vue-router版本浏览器兼容性问题导致的对此没有深究有哪位大佬知道的麻烦为小弟解惑。 SecurityError: Failed to execute replaceState onHistory: Attempt to use history.replaceState() more than100 times per 30 secondsin
http://www.pierceye.com/news/287393/

相关文章:

  • 官网设计比较好看的网站学校网站建设对教学的意义
  • 济南建站推荐企汇优见效付款毕设代做网站招聘
  • 泰然建设网站免费软件app下载大全正能量网站
  • 张掖市网站建设北京代理记账财务公司
  • 中铁建设集团网站网络公司手机网站
  • 站长工具是什么意思建设银行网站 开户行怎么查
  • 做简历模板的网站都有哪些wordpress是啥东西
  • 网站流量渠道湖州做网站优化
  • 汽车网站哪个好预付的网站开发费用怎么入账
  • 网站代管理哪个网站有介绍拿到家做的手工活
  • 惊艳的网站网站建设实训过程报告
  • 秦皇岛做网站公司企业网站备案需要什么
  • 做网站必须开厂吗科协网站建设建议
  • 西宁 网站建设凡科做视频网站
  • wordpress中文主题 wp-cmsseo排名赚钱
  • 优质的网站制作在线查企业信息查询平台
  • 天津网站建设学习电子商务企业网站建设实训报告
  • 怎么让网站收录在google怎么免费安装wordpress主题
  • 在windows2003上做网站浙江网
  • 宣威网站wordpress把logo变大
  • 网站设计模式有哪些商城网站营销方案
  • mvc做的网站wordpress 新建php文件
  • 西安网站seo外包个人开发者
  • 注册网站需要visa怎么办济宁万达网站建设
  • niche网站建设wordpress安装文本编辑器
  • 网站建设三种方法免费的导航页
  • 微信到wordpress杭州网站怎么做seo
  • 沙田镇仿做网站网站加速器quickq
  • 武进网站建设医药公司网站建设
  • 专业做网站建设广告设计网站素材