zoukankan      html  css  js  c++  java
  • 插槽

    插槽 的作用是 可以控制 页面 的组成 也就是外卖可以通过 插槽 来显示页面的不同 

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>lesson 20</title>
      <script src="https://unpkg.com/vue@next"></script>
    </head>
    <body>
      <div id="root"></div>
    </body>
    <script>
      // slot 插槽
      // slot 中使用的数据,作用域的问题
      // 父模版里调用的数据属性,使用的都是父模版里的数据
      // 子模版里调用的数据属性,使用的都是子模版里的数据
      // 具名插槽
      const app = Vue.createApp({
        template: `
          <layout>
            <template v-slot:header>
              <div>header</div>
            </template>
            <template v-slot:footer>
              <div>footer</div>
            </template>
          </layout>
        `
      });
    
      app.component('layout', {
        template: `
          <div>
            <slot name="header">
              1111111111111
            </slot>
            <div>content</div>
            <slot name="footer"></slot>
          </div>
        `
      });
    
      const vm = app.mount('#root');
    </script>
    </html>

    当我们 在   slot name="header" 命名 name  的 时候  我们这个 部分就会被 插槽 的内容所替换  如下 

     当不命名的时候  不被替换  slot  为 div  div  下如果有显示 就显示 div 下的内容 

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>lesson 20</title>
      <script src="https://unpkg.com/vue@next"></script>
    </head>
    
    <body>
      <div id="root"></div>
    </body>
    <script>
      // slot 插槽
      // slot 中使用的数据,作用域的问题
      // 父模版里调用的数据属性,使用的都是父模版里的数据
      // 子模版里调用的数据属性,使用的都是子模版里的数据
      // 具名插槽
      const app = Vue.createApp({
        template: `
          <layout>
            <template v-slot:header>
              <div>header</div>
            </template>
            <template v-slot:footer>
              <div>footer</div>
            </template>
          </layout>
        `
      });
    
      app.component('layout', {
        template: `
          <div>
            <slot>
              1111111111111
            </slot>
            <div>content</div>
            <slot name="footer"></slot>
          </div>
        `
      });
    
      const vm = app.mount('#root');
    </script>
    
    </html>

    显示 :

    越努力越幸运
  • 相关阅读:
    预防XSS攻击的一些方法整理
    Linux常用的命令集
    Linux根目录下各文件夹说明
    ThinkPHP框架3.2版本学习总结
    【ThinkPHP框架3.2版本学习总结】九、知识补充
    【ThinkPHP框架3.2版本学习总结】八、关联模型
    【ThinkPHP框架3.2版本学习总结】七、Ajax应用
    【ThinkPHP框架3.2版本学习总结】六、多表连接
    【ThinkPHP框架3.2版本学习总结】五、实用项
    tmux
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/14338082.html
Copyright © 2011-2022 走看看