作家
登录

用Jsx写Vue组件

作者: 来源: 2017-07-25 11:04:10 阅读 我要评论

一下是一段覆盖大年夜部分语法的vue jsx代码:

  1. render (h) { 
  2.  
  3.   return ( 
  4.  
  5.     <div 
  6.  
  7.       // normal attributes or component props. 
  8.  
  9.       id="foo" 
  10.  
  11.       // DOM properties are prefixed with `domProps` 
  12.  
  13.       domPropsInnerHTML="bar" 
  14.  
  15.       // event listeners are prefixed with `onor `nativeOn` 
  16.  
  17.       onClick={this.clickHandler} 
  18.  
  19.       nativeOnClick={this.nativeClickHandler} 
  20.  
  21.       // other special top-level properties 
  22.  
  23.       class={{ foo: true, bar: false }} 
  24.  
  25.       style={{ color: 'red', fontSize: '14px' }} 
  26.  
  27.       key="key" 
  28.  
  29.       ref="ref" 
  30.  
  31.       // assign the `ref` is used on elements/components with v-for 
  32.  
  33.       refInFor 
  34.  
  35.       slot="slot"
  36.  
  37.     </div> 
  38.  
  39.   ) 
  40.  
  41.  

可以看到DOM属性要加domProps前缀,但这里lass和style却不须要,因为这两个是特别的模块,并且react的class用的是className,vue却竽暌姑的class。事宜监听是以“on”或者“nativeOn”为开端。

实际上vue2.0的模版最后都邑被编译为render办法,所以模版声明的组件和jsx声明的组件最后都是一样的。

可以看到我们把jsx写在了render办法琅绫擎,render办法是vue2.0才支撑的,用来供给对虚拟DOM的支撑,也就是说只有vue2.0才支撑jsx语法转换。

膳绫擎的jsx最后会被编译成下面如许:

  1. render (h) { 
  2.  
  3.   return h('div', { 
  4.  
  5.     // Component props 
  6.  
  7.     props: { 
  8.  
  9.       msg: 

      推荐阅读

      尴尬了:谷歌Android Samba应用仅支持不安全的SMBv1

    近日谷歌初次推出其新的Android Samba应用,这显然不是好的宣布机会,因为在不久前,在重大年夜进击变乱中进击者就应用了该应用中安排的不安然版本SMB协定。比来几个月来,办事器消息块(SMBv1)协定中的马脚经由过程>>>详细阅读


    本文标题:用Jsx写Vue组件

    地址:http://www.17bianji.com/lsqh/36384.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)