博客
关于我
vue 第三天 组件化开发
阅读量:542 次
发布时间:2019-03-09

本文共 1529 字,大约阅读时间需要 5 分钟。

组件化开发思想:基于Vue的实践指南

组件化规范:Web Components

Web Components 是构建用户界面的标准化组件化方法。其核心目标是最大限度地复用代码,减少重复工作。然而,自定义组件在 HTML、CSS 和 JavaScript 中的实现并不方便,多次使用组件可能导致命名冲突。Vue 提供了对 Web Components 的实现,简化了组件化开发。

组件注册

全局组件注册

全局组件注册是一种简单且直观的方式,适用于需要在整个应用中重用的组件。其语法如下:

Vue.component('button-counter', {  data: function() {    return { count: 0 };  },  template: ''});

组件用法

全局组件可以通过以下方式使用:

组件注册注意事项

  • 数据函数:组件的 data 必须是一个函数。
  • 模板结构:组件模板必须是一个单个根元素。
  • 模板字符串:支持 ES6 模板字符串。
  • 命名规则:组件名可以使用驼峰或短横线方式,但在 HTML 中,标签必须使用短横线。
  • 局部组件注册

    局部组件只能在其父组件中使用。注册方式如下:

    var ComponentA = {  data: function() {    return { msg: 'HelloJerry' };  },  template: '
    {{ msg }}
    '};new Vue({ el: '#app', components: { 'component-a': ComponentA }});

    Vue调试工具用法

    可以通过百度找到相关工具的使用方法。

    组件间数据交互

    父组件向子组件传值

  • 子组件接收值的方式:
    props: ['title']
  • 父组件传递值:
  • 动态传递:
  • 属性名规则:在 props 中使用驼峰式,HTML 中需转换为短横线。
  • props 属性值类型

    支持 String、Number、Boolean、Array、Object 等类型。

    子组件向父组件传值

    通过自定义事件:

    非父子组件间传值

    使用事件中心:

    var eventHub = new Vue();eventHub.$on('add-todo', function(val) {});eventHub.$emit('add-todo', val);

    组件插槽

    插槽作用

    父组件向子组件传递内容,主要用于布局和内容展示。

    具名插槽

    定义:

    Vue.component('base-layout', {  template: `    
    `});

    使用:

    标题信息

    主要内容1

    主要内容2

    底部信息信息

    作用域插槽

    在子组件中使用 slot-scope 属性:

    基于组件的案例

    需求分析

    根据业务功能进行组件化划分:

  • 标题组件(展示文本)
  • 列表组件(列表展示、商品数量变更、商品删除)
  • 结算组件(计算商品总额)
  • 功能实现步骤

  • 实现整体布局和样式效果
  • 划分独立的功能组件
  • 组合所有子组件形成整体结构
  • 逐个实现各个组件功能
  • 转载地址:http://dgzsz.baihongyu.com/

    你可能感兴趣的文章
    Openlayers Source基础及重点内容讲解
    查看>>
    Openlayers view三要素(zoom,center,projection)及其他参数属性方法介绍
    查看>>
    OpenLayers 入门使用
    查看>>
    Openlayers 入门教程(一):应该如何学习 Openlayers
    查看>>
    openlayers 入门教程(七):Interactions 篇
    查看>>
    openlayers 入门教程(三):view 篇
    查看>>
    openlayers 入门教程(九):overlay 篇
    查看>>
    openlayers 入门教程(二):map 篇
    查看>>
    openlayers 入门教程(五):sources 篇
    查看>>
    openlayers 入门教程(八):Geoms 篇
    查看>>
    openlayers 入门教程(六):controls 篇
    查看>>
    openlayers 入门教程(十一):Formats 篇
    查看>>
    openlayers 入门教程(十三):动画
    查看>>
    openlayers 入门教程(十二):定位与轨迹
    查看>>
    openlayers 入门教程(十五):与 canvas、echart,turf 等交互
    查看>>
    openlayers 入门教程(十四):第三方插件
    查看>>
    openlayers 入门教程(四):layers 篇
    查看>>
    OpenLayers 项目分析(三)-OpenLayers中定制JavaScript内置类
    查看>>
    Openlayers下载与加载geoserver的wms服务显示地图
    查看>>
    Openlayers中使用Cluster+Overlay实现点击单个要素和聚合要素时显示不同弹窗
    查看>>