zoukankan      html  css  js  c++  java
  • vue教程(三)-slotkeep-alive的使用

    一、slot其实就是填坑操作,父组件传递dom结构,是vue提供的一种内置组件(组件知识请查看上篇博客内容)

    写法:<slot></slot>

    例子:

    var child = {template:'<div><slot></slot></div>'} //子组件中预留出坑来,让父组件填坑

    Vue.component('my-child',child);//全局注册方式

    父中使用

    var App = {template:'<my-child><button>填入按钮</button></my-child>'} //父组件中使用子组件,并传入button按钮。

    当子组件预留出多个坑时,需要给坑指定name属性,例如

    var child = {template:'<div><slot name='one'></slot><slot name='two'></slot></div>'} //子组件中预留出多个坑来,让父组件填坑,则需要指定name属性

    父中使用

    var App = {template:'<my-child><button slot='one'>填入按钮</button><h1slot='two'>填入标题</h1></my-child>'} //父组件中使用子组件,需使用slot属性指定填入到哪个坑中

    二、keep-alive

    keep-alive是Vue提供的一个抽象组件,用来对组件进行缓存,从而节省性能,由于是一个抽象组件,所以在v页面渲染完毕后不会被渲染成一个DOM元素

    当组件在keep-alive内被切换时组件的activated、deactivated这两个生命周期钩子函数会被执行。

    因此再动态变化填充dom时,一般使用keep-alive包裹,在上述两个生命周期钩子中进行相关操作,从而达到业务需要。

    注:git上有开发的项目作为例子,有兴趣的可以下载学习。源代码已上传git:Git地址QQ交流群

                                                                                                                                               ①群:699050440

                                                                                                                                               ②群:824313640

                                                                                     

  • 相关阅读:
    Autolayout及VFL经验分享
    在iOS7中修改状态栏字体的颜色
    IOS 入门开发之创建标题栏UINavigationBar的使用(二)
    IOS 使用横屏
    NSDictionary转化为实体类对象
    xcode SVN
    IOS model的getter和setter方法
    深入理解Java:注解(Annotation)--注解处理器
    深入理解Java:注解(Annotation)自定义注解入门
    div 的相对定位与绝对定位
  • 原文地址:https://www.cnblogs.com/fatpig-wf/p/11244294.html
Copyright © 2011-2022 走看看