首页 > 其他分享 >uni-app的renderjs示例 | app端使用window

uni-app的renderjs示例 | app端使用window

时间:2024-02-27 15:46:43浏览次数:34  
标签:console log 示例 ownerVm app vm renderjs

原文:https://juejin.cn/post/6974552469917401125

<template>
  <view style="padding-top: 200rpx;">
    <!-- 这里的:change:msg 旨在于监听逻辑层的msg变化,有变化就调用renderjs内容 -->
    <!-- 这里要注意,render。receiveMsg中的render是下面renderjs定义的module名称 -->
    <view
      id="renderjs-view"
      style="padding-bottom: 100rpx;"
      :msg="msg"
      :change:msg="render.receiveMsg"
      class="renderjs"
      @click="render.emitData"
    />
    <button
      class="app-view"
      @click="changeMsg"
    >
      app-view
    </button>
  </view>
</template>

<script>
export default {
  data() {
    return {
      msg: '',
    };
  },
  methods: {
    // 改变数据,触发renderjs
    changeMsg() {
      this.msg = `hello renderjs${Math.random() * 10}`;
      console.log(1111, this.msg);
    },
    // 接收renderjs传递的数据
    receiveRenderData(val) {
      console.log('receiveRenderData-->', val);
    },
  },
};
</script>

<script module="render" lang="renderjs">
    export default {
      data() {
        return {
          name: 'render-vm'
        }
      },
      mounted() {
        const view = document.getElementById('renderjs-view')
        const button = document.createElement('button')
        button.innerText = '一个按钮'
        view.appendChild(button)
      },
      methods: {
        // 接收逻辑层传递的数据
        receiveMsg(newValue, oldValue, ownerVm, vm) {
          console.log('newValue', newValue)
          console.log('oldValue', oldValue)
          console.log('ownerVm', ownerVm)
          console.log('vm', vm)
        },
        // 调用逻辑层的方法
        emitData(e, ownerVm) {
          console.log('receiveRenderData', e, ownerVm)
          ownerVm.callMethod('receiveRenderData', this.name)
        }
      }
    };
</script>

 

标签:console,log,示例,ownerVm,app,vm,renderjs
From: https://www.cnblogs.com/liujinyu/p/18036982

相关文章

  • Android权限警告(not in privapp-permissions whitelist)
    1.现象模块使用了Settings.Global之后,单编模块push到手机里面重启,发现手机卡在开机logo界面,开不了机2.抓取logcat看log打印会发现如下图片中的打印,主要的关键词为Privilegedpermissionsnotinprivapp-permissionswhitelist二.查找源码定位问题(Q的代码)文件路径PermissionM......
  • Hybird App开发,一种快速实现纯血鸿蒙App开发的理念
    2024年1月18日的开发者(HDC)大会上,就官宣了“纯血鸿蒙”操作系统即将于2024年3季度正式投产。与此同时,支付宝、京东、小红书、微博、高德地图、中国移动等在内的超百个头部应用都启动了鸿蒙原生应用开发,鸿蒙开发者日新增注册量已过万,同时众多985、211高校接连开设HarmonyOS相关课程......
  • 苹果上架App被拒绝的原因
    ​苹果上架App被拒绝的原因有很多种,主要包括以下几个方面:1.功能问题:苹果认为你的App存在功能问题,不符合AppStore的要求。比如,你的App可能存在漏洞,会影响用户体验或者安全性,或者涉及到隐私问题等等。2.内容问题:苹果认为你的App的内容不符合AppStore的规定,比如包含敏感内容、色......
  • uni-app分包优化、页面预加载、页面跳转等封装
    uni-app分包优化、页面预加载、页面跳转等封装:https://blog.csdn.net/qq_44209274/article/details/115913680?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170900569616800192290740%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=1......
  • 【用vue开发微信小程序】(uni-app)(自用,不推荐参考)
    【用vue开发微信小程序】(uni-app)(自用,不推荐参考):https://blog.csdn.net/sp_zhaoyun/article/details/126054403?spm=1001.2101.3001.6650.17&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-17-126054403-blog-130321374.235%5Ev43%......
  • AIO 简单代码示例
    客户端代码packagetest;importjava.net.InetSocketAddress;importjava.nio.ByteBuffer;importjava.nio.channels.AsynchronousSocketChannel;importjava.nio.channels.CompletionHandler;publicclassAIOClient{privatefinalAsynchronousSocketChannelclie......
  • NIO 交互简单示例
    客户端代码:packagetest;importjava.net.InetSocketAddress;importjava.nio.ByteBuffer;importjava.nio.channels.SocketChannel;publicclassClient{publicstaticvoidmain(String[]args){try(SocketChannelsocketChannel=SocketChannel.open()......
  • Qt QML使用虚拟键盘示例(附完整源码)
    使用"虚拟键盘"注意(例子的Qt版本:5.12.4)注意一:     /*必须在main.cpp开始处加入如下代码,否则无法使用"虚拟键盘"*/     qputenv(“QT_IM_MODULE”,QByteArray(“qtvirtualkeyboard”)); 注意二:     键盘大小是根据宽度自动计算的,所以,应用程序应该只设置Inpu......
  • UNI-APP获取以及使用App的原生权限问题
    UNI-APP获取以及使用App的原生权限问题安卓App现在检测越来越严格,例如相机权限,需要在调用的时候才能去获取用户的权限;而安卓和iOS的权限方法又不同;项目utils里面如下 permission.js就是具体获取各种权限的方法,而具体的拿到权限方法在utils.js里面以相机权限来局里说......
  • Python中字典setdefault()方法和append()的配合使用
    1.setdefault()方法语法dict.setdefault(key,default=None)说明:如果字典中包含给定的键值,那么返回该键对应的值。否则,则返回给定的默认值。Syntax:dict.setdefault(key,default_value)Parameters:Ittakestwoparameters:key–Keytobesearchedinthedictionar......