Vue中jsx的最简单用法

最终页面显示效果为

<div class="open-service" style="color: #0199f0; cursor: pointer;">
    hello
    <p>world</p>
</div>

主页面

parent.vue

<template>
  <div class="hello">
    <vue-test :typeSpan="typeSpan"></vue-test>
  </div>
</template>

<script type="text/jsx">
  import VueTest from "./jsx/VueTest";
export default {
  name: ‘HelloWorld‘,
  components:{
    VueTest,
  },
  computed:{
    typeSpan(){
      return {
        text:‘hello‘,
        attrs:{
          class:"open-service",
          style:‘color:#0199f0;cursor:pointer‘
        },

      }
    }
  },
}
</script>

子页面child.vue有两种方法

第一种

<script type="text/jsx">
export default {
    props: {
        typeSpan:{
            type:Object,
            default:{}
        }
    },
    created(){

    },
    methods:{
        openContactService(){
            alert(1)
        },
    },
    render(createElement) {
        return(
            <div
                class={this.typeSpan.attrs.class}
                style={this.typeSpan.attrs.style}
                onClick={this.openContactService}>
                {this.typeSpan.text}
              <p >world</p>
            </div>
        )
    }
}
</script>

第二种

<script type="text/jsx">
export default  {
    props:{
        typeSpan:{
            type:Object,
            default:{}
        }
    },
    methods:{
        openContactService(){
          alert(1)
      }
    },
   render(createElement, context) {
        return createElement(
            ‘div‘,{
                class:this.typeSpan.attrs.class,
                style:this.typeSpan.attrs.style,
                on:{
                    click:this.openContactService
                }
            },[
                this.typeSpan.text,
                createElement(‘p‘,‘world‘),
            ]

        )
   }
}
</script>

这是两个最简单的例子

参考链接 https://cn.vuejs.org/v2/guide/render-function.html

原文地址:https://www.cnblogs.com/ttjm/p/11350988.html

时间: 2024-11-04 01:16:44

Vue中jsx的最简单用法的相关文章

IOS 中block结构的简单用法

自从block出现之后,很多API都开始采用这样的结构,由此可见,block确实有许多优势存在,这里将一些简单用法总结如下: 一.如何声明一个block变量 我们通过^符号来声明block类型,形式如下: void (^myBlock)(); 其中第一个void是返回值,可以是任意类型,中间括号中^后面的是这个block变量的名字,我把它命名为myBlock,最后一个括号中是参数,如果多参数,可以写成如下样式: int (^myBlock)(int,int); 同样,你也可以给参数起名字: in

关于linux中sed命令的简单用法

linux中sed的学习和使用 今天突然用到了sed这个命令,就即兴学习了一波突然感觉这个功能还是很强的.sed在#man sed下文档查看解释的是:用于过滤和转换文本的流编辑器.即如下图: 我自己用过这个命令之后感觉对于文档来说可以显示某个区间行,显示结果还可以在段前后添加内容删除,替换内容.但是最后才发现,怎么还能直接修改到文件里不仅仅是显示出来,文件内容直接被修改了. 下面就一一介绍这个有趣的命令,莫急莫急一个一个来. 首先找个文件(没用的文件且有内容,搞坏了系统文件可不好玩了)来当测试文

Vue中Computed和Watch的用法及区别

一. 计算属性(computed) 1.计算属性是为了模板中的表达式简洁,易维护,符合用于简单运算的设计初衷. 例如: <p id="app"> {{ myname.substring(0,1).toUpperCase() + myname.substring(1) }} </p> 运算过于复杂,冗长,且不好维护,因此我们对于复杂的运算应该 使用计算属性的方式去书写. 因此可改写为: <body> <div id="app"

WPF中StringToImage和BoolToImage简单用法

在WPF的绑定控件操作中,经常会通过bool值或者某些特定的string值做出相应动作.但UI层控件的很多属性对应的都不是Bool值或者对应的只是固定的String值. 这个时候有两方法解决该问题. 1.是在后台cs中做出比较判断,然后根据相应结果传达UI层做出相应动作. 2.是直接在UI界面写好,然后会自行根据传入值做相应动作. 本文主要讲第二种方法.Demo在结尾会附上. 一.基类,判断类代码(Bool篇) public class BoolToValueConverter<T> : IV

AngularJS中$http服务的简单用法

我们可以使用内置的$http服务直接同外部进行通信.$http服务只是简单的封装了浏览器原生的XMLHttpRequest对象. 1.链式调用 $http服务是只能接受一个参数的函数,这个参数是一个对象,包含了用来生成HTTP请求的 配置内容.这个函数返回一个promise对象,具有success和error两个方法. $http({ url:'data.json', method:'GET' }).success(function(data,header,config,status){ //响

vue中computed和watch的用法

computed用来监控自己定义的变量,该变量不在data里面声明,直接在computed里面定义,然后就可以在页面上进行双向数据绑定展示出结果或者用作其他处理: computed比较适合对多个变量或者对象进行处理后返回一个结果值,也就是数多个变量中的某一个值发生了变化则我们监控的这个值也就会发生变化,举例:购物车里面的商品列表和总金额之间的关系,只要商品列表里面的商品数量发生变化,或减少或增多或删除商品,总金额都应该发生变化.这里的这个总金额使用computed属性来进行计算是最好的选择 wa

sqlplus 中spool命令的简单用法

spool基本格式: spool 路径+文件名 select col1||','||col2||','||col3||','||col4||'..' from tablename; spool off spool常用的设置: set colsep' '; //域输出分隔符 set echo off; //显示start启动的脚本中的每个sql命令,缺省为on set feedback off; //回显本次sql命令处理的记录条数,缺省为on set heading off; //输出域标题,缺

在vue中使用vuex 一个简单的实例

1.安装vuex:npm install vuex --save 2.在main.js文件中引入vuex (请忽略其它代码) 3.建一个vuex文件夹,然后在建一个store.js(这两个文件名字可以随便定义) 代码如下 4.在页面中使用这个参数 5.改变参数的值,使用commit方法,它带两个参数,第一个是store.js里面setMessageNum方法,第二个是新的值(参数可选) 原文地址:https://www.cnblogs.com/Mrrabbit/p/8312721.html

Vue中的双向数据绑定简单介绍

1. 文本框绑定v-module 1 <div id="app"> 2 <input type="text" v-model="msg" value="666"> // 表单使用v-mode时value会失效 3 {{msg}} 4 </div> 5 6 <script src="js/vue.js"></script> 7 <script&