zoukankan      html  css  js  c++  java
  • vue 学习记录

    监听组件的生命周期

    • 只需要在父组件引用的时候通过 @hook来监听即可,代码如下
    //父组件
    <Child @hook:mounted="doSomething"/>
    

    属性事件的传递

    • 一次性传递(比如react里面的 {...this.props})答案就是 v-bind和 v-on。

    举个例子,假如有一个基础组件 BaseList,只有基础的列表展示功能,现在我们想在这基础上增加排序功能,这个时候我们就可以创建一个高阶组件 SortList。

    <!-- SortList-->
    <template>
      <BaseList v-bind="$props" v-on="$listeners"> <!-- ... --> </BaseList>
    </template>
    
    
    import BaseList from "./BaseList"; 
    // 包含了基础的属性定义
    import BaseListMixin from "./BaseListMixin";
    // 封装了排序的逻辑 
    import sort from "./sort.js";  
    export default {
        props: BaseListMixin.props,
        components: { BaseList }
      };
    
    

    传递属性和事件的方便性,而不用一个个去传递

    url变了,但数据没有更新

    场景:不同路由复用组件,路由变化,数据并未更新,生命周期钩子并为触发
    解决办法:

    • 设置一个unique key
    <router-view :key="$route.fullPath">
    
    • 设置个watch函数
    watch: {
        "$route": {
            handler(somevalue) {
                // do stuff
            },
            immediate: true
        }
    }
    
  • 相关阅读:
    博客阅读计数优化
    博客阅读简单计数
    博客后台富文本编辑
    博客分类统计
    Django关联关系查询
    上下篇博客,按月归档
    浅谈闭包以及常见面试题
    浅谈前端缓存(转至大佬)
    post请求头的常见类型
    浅谈RegExp 对象的方法
  • 原文地址:https://www.cnblogs.com/gongxiansheng/p/11318762.html
Copyright © 2011-2022 走看看