Rumah > hujung hadapan web > tutorial js > Vue如何支持JSX语法详解

Vue如何支持JSX语法详解

小云云
Lepaskan: 2017-12-22 11:15:28
asal
1960 orang telah melayarinya

通常开发vue我们使用的是模板语法,其实还有和react相同的语法,那就是render函数,同样支持jsx语法。 本文主要介绍了详解Vue如何支持JSX语法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。

Vue 的模板实际是编译成了 render 函数。

1.传统的createElement方法


createElement(
 'anchored-heading', {
  props: {
   level: 1
  }
 }, [
  createElement('span', 'Hello'),
  ' world!'
 ]
)
Salin selepas log masuk

渲染成下面这样


<anchored-heading :level="1">
  <span>Hello</span> world!
</anchored-heading>
Salin selepas log masuk

2.使用jsx语法

这就是会用到一个Babel plugin 插件,用于在 Vue 中使用 JSX 语法的原因,它可以让我们回到于更接近模板的语法上。

1.安装


npm install\
 babel-plugin-syntax-jsx\
 babel-plugin-transform-vue-jsx\
 babel-helper-vue-jsx-merge-props\
 babel-preset-es2015\
 --save-dev
Salin selepas log masuk

2.编辑.babelrc文件


{
"presets": ["es2015"],
"plugins": ["transform-vue-jsx"]
}
Salin selepas log masuk

代码编辑如下


Vue.component(&#39;jsx-example&#39;, {
 render (h) { // <-- h must be in scope
  return <p id="foo">bar</p>
 }
})
Salin selepas log masuk

将 h 作为 createElement 的别名是 Vue 生态系统中的一个通用惯例,实际上也是 JSX 所要求的,如果在作用域中 h 失去作用, 在应用中会触发报错。

相关推荐:

JSX与HTML的那些不同

开始使用React和JSX_html/css_WEB-ITnose

JavaScript的React框架中的JSX语法学习入门教程_基础知识

Atas ialah kandungan terperinci Vue如何支持JSX语法详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan