Usually we use template syntax to develop vue. In fact, there is the same syntax as react, that is, the render function, which also supports jsx syntax. This article mainly introduces the detailed explanation of how Vue supports JSX syntax. The editor thinks it is quite good, so I will share it with you now and give it as a reference. Let’s follow the editor to take a look, I hope it can help everyone.
Vue’s template is actually compiled into a render function.
1. The traditional createElement method
createElement( 'anchored-heading', { props: { level: 1 } }, [ createElement('span', 'Hello'), ' world!' ] )
is rendered as follows
<anchored-heading :level="1"> <span>Hello</span> world! </anchored-heading>
2. Use jsx syntax
This is why a Babel plugin is used to use JSX syntax in Vue. It allows us to return As for the syntax that is closer to the template.
1.Installation
npm install\ babel-plugin-syntax-jsx\ babel-plugin-transform-vue-jsx\ babel-helper-vue-jsx-merge-props\ babel-preset-es2015\ --save-dev
2.Edit the .babelrc file
##
{ "presets": ["es2015"], "plugins": ["transform-vue-jsx"] }
Vue.component('jsx-example', { render (h) { // <-- h must be in scope return <p id="foo">bar</p> } })
The differences between JSX and HTML
Start using React and JSX_html/css_WEB-ITnose
Introductory Tutorial for Learning JSX Syntax in JavaScript’s React Framework_Basic Knowledge
The above is the detailed content of Detailed explanation of how Vue supports JSX syntax. For more information, please follow other related articles on the PHP Chinese website!