• vue脚手架 笔记01


    01 页面组件

            所谓的组件就是把页面每一块内容单独分离出去封装起来

            组件包括自己本身的html css 和 js

            可以被反复引入使用 (复用)

            方便后期维护(方便快速的增加或者删除指定页面的指定模块)

            组件化开发:

                    组件是独立的可复用的代码组织单元 组件系统是vue核心特性之一

            组件分类:页面组件 业务组件 通用组件

            页面组件:

                    一个vue文件充当一个页面比如:现在的App.vue

            业务组件:

                    基本上页面渲染部分很少 主要针对数据的业务逻辑处理的vue文件

            通用组件:

                    一个小组件 可以在其他页面上到处多次渲染

            Index页面组件的渲染:

                    1 在src里面创建Index.vue

                    2 vue文件中定义三大模块 template script style

                    3 template里面必须有根节点标签(一般都是div div加id id的名字一般就叫做组件的名字)

                    4 script必须定义export default{}表示数据和事件对外暴露使用

                    5 在mian.js通过import 引入这个组件

                            import Index from './Index.vue'

                    6 在new Vue的options对象里面 通过render函数渲染这个页面组件

                             render: h => h(Index)

                     组件的data必须是一个函数 这个函数必须return一个大括号

                    在大括号里面定义组件要用的data数据

                    面试题:为什么组件的data必须是一个函数

                    原因:将来多个组件打包后 会合并到一起 一旦组件之间有data数据重名,

                    就可能出现覆盖的情况  导致打包之后数据混乱所以组件的data是一个函数,

                    就形成了一个闭包  数据就变成了局部变量 就算都打包合并到一起,

                    不同的组件就是不同的局部变量 数据重名也互相不影响。

    02 子组件

            一个组件在另一个组件的template里面渲染使用那么当前的这个组件就是子组件,外部的组件就是父组件

            vue文件存放位置的潜规则:

            页面组件存放在src下views文件夹

            通用组件(反复复用的一小部分效果的组件) 存放在src下componenets文件夹里面

            (潜规则一般组件的首字母大写 不强求 一般在main里面引入的组件对象都是大写)

    步骤:

            1.在components文件夹里面创建文件名.vue文件

            2.在子组件中定好当前组件的模板 样式 和数据

            3.在想要引入该组件的vue文件中的script标签里面通过import引入这个子组件

                    import 对象名 from './components/组件名'

            4.在当前父组件的compoents:{}里面注册子组件标签名

                    components:{

                        Child

                    }

            5.在当前父组件的template里面直接通过子组件标签名使用

            总结:

            组件的简单理解:

                把一堆标签封装起来 变成一个自定义标签 可以反复使用

                这个标签里面自带页面样式和动态效果

    03 动态组件

            动态组件的使用:

                    1 在template模板里面引用component组件(vue提供的自定义标签名称就叫做组件)

                    2 component组件有一个is属性 is属性等于哪一个子组件标签名  就会渲染哪一个子组件

                    3 使用v-bind:is 绑定is属性 关联一个变量 变量等于哪个子组件就显示哪个子组件

          .native 事件穿透 把事件穿透到#child的标签上面 相当于父组件模板中给子组件的标签绑定事件

          最终绑定的是id为child的标签上面

          html原生的标签绑定事件不需要穿透

          自定义组件或者第三方的组件或者官方提供的其他的组件需要穿透

    04 slot插槽

            slot插槽的作用:

                    子组件的标签内部默认不能存放任何html代码

                    因为子组件最终渲染成功以后 会把子组件的标签的内容替换并渲染成子组件

                    template里面的内容

            插槽分类:

            匿名插槽:

                    在子组件的模板中 定义slot标签即可

                    将来子组件标签内部所写的所以内容 都会被保存到这个slot标签所在的位置

            具名插槽:

                    子组件标签内部的slot组件 需要添加一个name属性 值为自定义名字

                    外部使用该子组件的时候 想要保存的内容的标签上面定义slot属性,

                    值为子组件内部slot组件的name值

  • 相关阅读:
    java毕业设计电子病历系统mybatis+源码+调试部署+系统+数据库+lw
    taichi 和正常python 速度对比
    低代码与数智制造:引领软件开发的革新之旅
    API 接口参数签名的几种方案
    推荐几款可以转换图片格式的软件
    (完全解决)如何输入一个图的邻接矩阵(每两个点的亲密度矩阵affinity),然后使用sklearn进行谱聚类
    mysql5.7版本数据库主主同步
    use embeddings stored in vector db to reduce work for LLM generating response
    2.9 Go语言中的Switch
    JVM - 双亲委派
  • 原文地址:https://blog.csdn.net/m0_47045804/article/details/139472336