国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

詳解如何使用webpack在vue項目中寫jsx語法

2024-05-06 15:24:39
字體:
來源:轉載
供稿:網友

本文介紹了如何使用webpack在vue項目中寫jsx語法,分享給大家,具體如下:

我們知道Vue 2.0中對虛擬DOM的支持。我們可以通過JavaScript動態的創建元素,而不用在template中寫HTML代碼。虛擬DOM最終將被渲染為真正的DOM。

data: { msg: 'Hello world'},render (h) { return h( 'div', { attrs: { id: 'my-id' }, [ this.msg ] );}

渲染后的內容為:

<div id='my-id'>Hello world</div>

Vue 2.0中的render為我們開啟了一片新的天地,賦予了我們無限的想象力。比如,我們可以把React中用到的JSX語法應用到Vue中來。接下來,我們就聊聊怎么在Vue項目中使用JSX.

JSX簡介

JSX是基于Javascript的語言擴展, 它允許在Javascript代碼中插入XML語法風格的代碼。如下所示:

data: { msg: 'Hello world'},render (h) { return ( <div id='my-id'>,  { this.msg }  </div> );}

但值得注意的是,瀏覽器默認是解析不了JSX的,它必須要先編譯成標準的JavaScript代碼才可以運行。就像我們需要將sass或者less編譯為CSS代碼之后才能運行一樣。

在Vue中使用JSX

Vue框架并沒有特意地去支持JSX,其實它也沒必要去支持,因為JSX最后都會編譯為標準的JavaScript代碼。既然這樣, 那Vue和JSX為什么能配合在一起使用呢? 很簡單, 因為Vue支持虛擬DOM, 你可以用JSX或者其他預處理語言,只要能保證render方法正常工作即可。

Vue官方提供了一個叫做babel-plugin-transform-vue-jsx的插件來編譯JSX, 我們稍后介紹如何使用它。

為什么要在Vue中使用JSX

為什么要再Vue中使用JSX ? 其實Vue并沒有強迫你去使用JSX, 它只是提供了一種新的方式而已。正所謂蘿卜青菜,各有所愛。有的人覺得在render方法中使用JSX更簡潔,有的人卻覺得在JavaScript代碼中混入HTML代碼很惡心。反正你喜歡就用,不喜歡就不用唄。廢話少說,我們先看一個簡單的應用:
script.js

new Vue({ el: '#app', data: { msg: 'Click to see the message' }, methods: { hello () {  alert('This is the message') } }});

index.html

<div id="app"> <span   class="my-class"   style="cursor: pointer"   v-on:click="hello" >  {{ msg }} </span></div>

代碼很簡單,就是在頁面上顯示一個span, 里面的內容為"Click to see the message"。當點擊內容時,彈出一個alert。我們看看用render怎么實現。

用Vue 2.0中的render函數實現

script.js

new Vue({ el: '#app', data: { msg: 'Click to see the message' }, methods: { hello () {  alert('This is the message') } }, render (createElement) { return createElement(  'span',  {  class: { 'my-class': true },  style: { cursor: 'pointer' },  on: {   click: this.hello  }  },  [ this.msg ] ); },});            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 龙泉市| 裕民县| 大连市| 泸溪县| 剑河县| 和林格尔县| 沅陵县| 齐河县| 治县。| 汶川县| 大石桥市| 固镇县| 津南区| 玉环县| 金华市| 黎川县| 丰顺县| 星座| 博白县| 上蔡县| 常宁市| 河北区| 泽库县| 精河县| 龙江县| 大邑县| 时尚| 仙居县| 黑河市| 黄骅市| 大渡口区| 民丰县| 永善县| 大荔县| 富源县| 绥滨县| 凌云县| 黔江区| 叙永县| 汶川县| 定安县|