方法是:1、用原有模板语法,挂载渲染;2、用render属性、createelement函数直接渲染;3、用render属性,配合组件的template属性、createelement函数渲染;4、使用render属性,配合单文件组件渲染。
本文操作环境:windows10系统、vue2.9.6版,dell g3电脑。
vue渲染方法是什么vue中的渲染方式个人总结可分为4种:
原有模板语法,挂载渲染
使用render属性,createelement函数直接渲染
使用render属性,配合组件的template属性,createelement函数渲染
使用render属性,配合单文件组件,createelement函数渲染
方式1:
原有模板语法,挂载渲染,即html的方式做渲染。当页面返回时html中的v-model等属性并没有被渲染,保持不变发给客户端,客户端直到加载了vue,创建了实例之后才会将这些标识渲染出来。
1 <!doctype html> 2 <html lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <title>testvue</title> 6 </head> 7 <body> 8 <div id="app"> 9 <input v-model="message">10 <p>message is: {{ message }}</p>11 </div>12 </body>13 <script src="js/vue.js"></script>14 <script type="text/javascript">15 var v = new vue({16 el: '#app',17 data: {18 message: '这是内容'19 }20 });21 </script>22 </html>
方式2:
使用render属性,createelement函数直接渲染:原本无html,通过javascript 的完全编程的能力生成页面。特点是只适合一些细节渲染,虽完全控制输出,但不够直观,实现复杂。
1 <!doctype html> 2 <html lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <title>testvue</title> 6 </head> 7 <body> 8 <div id="app"> 9 </div>10 </body>11 <script src="js/vue.js"></script>12 <script type="text/javascript">13 var v = new vue({14 el: '#app',15 data: {16 message: '这是内容'17 },18 render: function (createelement) {19 return createelement('p', 'message is:' + this.message)20 }21 });22 </script>23 </html>
方式3:
使用render属性,配合组件的template属性,createelement函数渲染。
相比于上一个方式,加入组件,利用template属性,更为直观,同样是原本无html,通过render函数渲染。
1 <!doctype html> 2 <html lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <title>testvue</title> 6 </head> 7 <body> 8 <div id="app"> 9 </div>10 </body>11 <script src="js/vue.js"></script>12 <script type="text/javascript">13 var mycomponent = {14 data () {15 return {16 message: '这是内容'17 }18 },19 template: `20 <div id="app">21 <input v-model="message">22 <p>message is: {{ message }}</p>23 </div>24 `25 };26 27 var v = new vue({28 el: '#app',29 components: {30 'my-component': mycomponent31 },32 render: function (createelement) {33 return createelement('my-component')34 }35 //ecmascript6: render: h => h('my-component')36 });37 </script>38 </html>
特点是动态渲染,并且通过组件实现了模块分离,但是html模板被包在````里,使用不方便,ide无法高亮代码,不适合大型项目。
方式4:
使用render属性,配合单文件组件,createelement函数渲染。这种方式是绝大部分vue项目(官方脚手架就是采用该渲染方式)的渲染方式。使用过vue cli的话应该都比较了解吧。特点就是单文件组件,模块化,动态渲染,典型的单页面应用。
【相关推荐:《vue.js教程》】
以上就是vue渲染方法是什么的详细内容。