利用vue.js插入dom节点的方法

作者:风雨后见彩虹 时间:2024-05-28 15:55:53 

本文主要介绍的是vue.js插入dom节点的方法,下面话不多说,来看看详细的介绍吧。

html代码:


<div id="app"></div>

js代码:


var MyComponent = Vue.extend({
template: '<div>Hello World</div>'
})
var myAppendTo = Vue.extend({
template:'<p>appendTo</p>'
})
var myBefore = Vue.extend({
template:'<p>before</p>'
})
var myAfter = Vue.extend({
template:'<p>after</p>'
})
// 创建并挂载到 #app (会替换 #app)
new MyComponent().$mount('#app');

// 手动挂载
new myAppendTo().$mount().$appendTo('#app');//appendTo
new myBefore().$mount().$before('#app');//before
new myAfter().$mount().$after('#app');//after

说明:

      1.对比jquery的dom节点的插入方式,vue.js的插值需要使用先new创建一个实例然后通过$mount()

      2.手动挂载到dom节点中,然后使用$appendTo/$before/$after等方法进行插值。

      3.这种操作dom的思想其实并不是vue提倡的方式,而vue提倡的方式是通过操作数据来完成你想要的结果。

      4.vue的思想是这个dom已经存在,通过判断可以控制它显示隐藏。

      5.所以使用vue的时候,要试着转变一下使用jquery的时候那种思想就像api提供的这种方法 (v-if)。


<ul>
<li v-if="ok">显示</li>
<li v-else>隐藏</li>
</ul>

也可以通过(v-show)来控制显示隐藏:


<ul>
<li v-show="ok">显示</li>
</ul>

那么v-if和v-show的区别:

在切换 v-if 块时,Vue.js 有一个局部编译/卸载过程,因为 v-if 之中的模板也可能包括数据绑定或子组件。

v-if 是真实的条件渲染,因为它会确保条件块在切换当中合适地销毁与重建条件块内的事件 * 和子组件。

v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做——在条件第一次变为真时才开始局部编译(编译会被缓存起来)。

相比之下,v-show 简单得多——元素始终被编译并保留,只是简单地基于 CSS 切换。

一般来说,v-if 有更高的切换消耗而 v-show 有更高的初始渲染消耗。因此,如果需要频繁切换 v-show 较好,
如果在运行时条件不大可能改变 v-if 较好。

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对asp之家的支持。

标签:vue.js,dom插入
0
投稿

猜你喜欢

  • Python实现图片格式转换

    2023-08-03 04:58:57
  • Python爬虫实现模拟点击动态页面

    2022-05-19 05:21:19
  • MySQL数据库优化之分表分库操作实例详解

    2024-01-20 10:33:53
  • ecshop百度编辑器远程下载无后缀的图片,并且加水印

    2023-08-14 17:31:41
  • 分享Python 加速运行技巧

    2022-07-07 12:48:04
  • ASP函数指针试探-GetRef

    2009-10-12 12:39:00
  • Python批量转换文件编码格式

    2021-10-07 05:01:22
  • Python selenium 三种等待方式解读

    2023-12-26 05:37:56
  • Python代理IP爬虫的新手使用教程

    2021-09-27 09:27:59
  • python判断一个集合是否包含了另外一个集合中所有项的方法

    2022-01-15 19:08:06
  • python代码检查工具pylint 让你的python更规范

    2021-07-03 12:06:38
  • SQL写法--行行比较

    2024-01-12 18:53:34
  • 基于Sql Server通用分页存储过程的解决方法

    2024-01-28 01:14:28
  • 对python借助百度云API对评论进行观点抽取的方法详解

    2023-12-06 19:42:12
  • 百度留言本js 大家可以参考下

    2024-04-16 09:31:55
  • Ajax编程之旅第一站:HTTP请求

    2008-08-07 12:55:00
  • 对Python3使运行暂停的方法详解

    2021-02-05 22:55:21
  • 用pandas中的DataFrame时选取行或列的方法

    2023-05-15 07:43:04
  • 对Python3中列表乘以某一个数的示例详解

    2023-05-05 03:10:40
  • python循环神经网络RNN函数tf.nn.dynamic_rnn使用

    2022-08-28 15:42:24
  • asp之家 网络编程 m.aspxhome.com