zoukankan      html  css  js  c++  java
  • vuebase----3.slot插槽

    1.不具名slot;

    2.具名slot;

    3.父组件模板的东西在父级作用域内编译,子组件模板的所有东西在子级作用域内编译;

    4.编译作用域

    5.作用域插槽(数据传递)

    6.数据可以动态的改变

    ------------------------------------------------------------App.vue-------------------------------------------------------------------------

    <template>
    <div id="app">
    <img src="./assets/logo.png">
    <!-- <HelloWorld/> -->
    <Parent />
    <!-- <Music/> -->
    <slotDemo>
    <!-- <div>hello插槽</div>
    <template slot="v1">
    <div class="v1">{{slotParentmsg}}</div>
    </template>
    <template slot="v2">
    <div class="v1">v2内容</div>
    </template> -->
    <div slot-scope="slotparents"><h2>{{slotparents.msgs}}</h2></div>
    </slotDemo>
    </div>
    </template>

    <script>
    /* import HelloWorld from './components/HelloWorld' */
    import Parent from './components/parent'
    import Music from './components/music'
    import slotDemo from './components/slotDemo'

    export default {
    name: 'App',
    components: {
    Parent,
    Music,
    slotDemo
    },
    data(){
    return{
    slotParentmsg:"插槽的动态内容"
    }
    },
    methods:{

    }
    }
    </script>

    <style>
    #app {
    font-family: 'Avenir', Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: center;
    color: #2c3e50;
    margin-top: 60px;
    }
    </style>

    ----------slotDemo.vue---------

    <template>
    <div>
    <!-- <slot name="v1"></slot>
    <slot name="v2">默认信息</slot> -->
    <slot :msgs="msg"></slot>
    </div>
    </template>

    <script>
    export default {
    name: "slotDemo",
    data() {
    return {
    msg:"子插槽的数据动态改变"
    }
    }
    }
    </script>

    <style lang="css" scoped>
    </style>

    ------------------------parent.vue-------------------------------

    <template>
    <div class="parent">
    <slotDemo>
    <template slot-scope="slotparents">
    <h1>1111----{{slotparents.msgs}}----1111</h1>
    </template>
    </slotDemo>
    父组件:
    <p>{{sendParentinfo}}</p>
    小明明称呼:
    <Child title="父组件的数据" nick="小宝贝" friend="" parentss="小宝贝爸爸" :age="age" @sendParentinfo="sendParentinfos" />
    <p>{{gemsgInfo}}</p>
    </div>
    </template>

    <script>
    import slotDemo from './slotDemo'
    import Child from './child'
    export default {
    name: "parent",
    components: {
    Child,
    slotDemo
    },
    data() {
    return {
    sendParentinfo:"",
    age:1000
    }
    },
    computed:{
    gemsgInfo(){
    return this.$root.msg
    }
    },
    methods: {
    sendParentinfos(data) {
    this.sendParentinfo=data
    }
    }
    }
    </script>
    <style lang="css" scoped>
    </style>

  • 相关阅读:
    2019-2020-2 20175226王鹏雲《网络对抗技术》Exp4 恶意代码分析
    2019-2020-2 20175226王鹏雲《网络对抗技术》Exp3 免杀原理与实践
    2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践
    2019-2020-2 20175226王鹏雲 《网络对抗技术》 Exp1 PC平台逆向破解
    2019-2020-1 20175226 《信息安全系统设计基础》ucosii
    系统综合实践——第7次实践作业 01组
    系统综合实践——第6次实践作业 01组
    系统综合实践——第5次实践作业
    系统综合实践——第4次实践作业
    系统综合实践——第3次实践作业
  • 原文地址:https://www.cnblogs.com/xiao-peng-ji/p/11329863.html
Copyright © 2011-2022 走看看