博客
关于我
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/

    你可能感兴趣的文章
    Objective-C实现pow函数功能(附完整源码)
    查看>>
    Objective-C实现prefix conversions string前缀转换字符串算法(附完整源码)
    查看>>
    Objective-C实现prefix conversions前缀转换算法(附完整源码)
    查看>>
    Objective-C实现pressure conversions压力转换算法(附完整源码)
    查看>>
    Objective-C实现Prim 算法生成图的最小生成树MST算法(附完整源码)
    查看>>
    Objective-C实现prime sieve eratosthenes埃拉托斯特尼素数筛选法算法(附完整源码)
    查看>>
    Objective-C实现PrimeCheck函数算法 (附完整源码)
    查看>>
    Objective-C实现PrimeFactors质因子分解算法 (附完整源码)
    查看>>
    Objective-C实现prim普里姆算法(附完整源码)
    查看>>
    Objective-C实现PriorityQueue优先队列算法(附完整源码)
    查看>>
    Objective-C实现proth number普罗斯数算法(附完整源码)
    查看>>
    Objective-C实现pythagoras哥拉斯算法(附完整源码)
    查看>>
    Objective-C实现QLearning算法(附完整源码)
    查看>>
    Objective-C实现QR正交三角分解法算法(附完整源码)
    查看>>
    Objective-C实现qubit measure量子位测量算法(附完整源码)
    查看>>
    Objective-C实现Queue队列算法(附完整源码)
    查看>>
    Objective-C实现Queue队列算法(附完整源码)
    查看>>
    Objective-C实现quick select快速选择算法(附完整源码)
    查看>>
    Objective-C实现rabin-karp算法(附完整源码)
    查看>>
    Objective-C实现radians弧度制算法(附完整源码)
    查看>>