popring's Blog

探索、记录、分享

Vue官网找了一圈没找到关于在父组件中使用子组件,生命周期是如何运行的。

先说结论

  • 父组件 beforeCreatedcreatedbeforeMount
  • 子组件 beforeCreatedcreatedbeforeMountmounted
  • 父组件 mounted

若使用 props 进行父子组件传值(若只进行自身组件数据进行维护,只会执行自身组件的生命周期函数)

  • 父组件 beforeUpdate
  • 子组件 beforeUpdateupdated
  • 父组件 updated

销毁阶段

  • 父组件 beforeDestory
  • 子组件 beforeDestorydestoryed
  • 父组件 destoryed
阅读全文 »

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

注意:给定 n 是一个正整数。

示例 1:

输入: 2
输出: 2
解释: 有两种方法可以爬到楼顶。

  1. 1 阶 + 1 阶
  2. 2 阶
    示例 2:

输入: 3
输出: 3
解释: 有三种方法可以爬到楼顶。

  1. 1 阶 + 1 阶 + 1 阶
  2. 1 阶 + 2 阶
  3. 2 阶 + 1 阶

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/climbing-stairs
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


阅读全文 »

更多面经请移步:https://www.nowcoder.com/profile/464647589/myDiscussPost

个人校招面经

有些可能写的不全,没有及时总结(这是个坏习惯),有的只是总结了下个人回答的不太好的部分,仅供参考。

阅读全文 »

首先配置仓库来源

天朝特殊环境,不得不配置为国内的源

打开终端并执行

1
2
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

macOS 或 Linux

1
2
3
4
5
6
7
8

export GO111MODULE=on
export GOPROXY=https://goproxy.cn

# 或者
echo "export GO111MODULE=on" >> ~/.profile
echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
source ~/.profile

windows

1
2
$env:GO111MODULE = "on"
$env:GOPROXY = "https://goproxy.cn"

相关Go资料

Goproxy 中国

Go语言101

Go官方语言规范 - 英文:据说看完此文档,Go基本就入门了

Go by Example:通过实践入门

7天用Go从零实现Web框架Gee教程

v-if

根据表达式的真假值来决定是否渲染,它会造成真实DOM元素的渲染和销毁。

v-show

根据表达式之真假值,切换元素的 display CSS property。

当条件变化时该指令触发过渡效果。

v-ifv-show 区别

  • v-if 会 “真正” 条件的渲染,它要确定事件监听器和子组件的正确创建和销毁(切换自组件会经历生命周期函数)
  • v-if 如果初始条件为假,则不会渲染,只有当值为真是才会进行渲染
  • v-show 无论在什么条件下都会进行渲染 DOM 元素,只是简单的切换 css 样式,来进行视觉上的显示和隐藏。
  • v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。如果元素频繁的切换,建议使用 v-show ;如果运行后条件很少改变,则使用 v-if
  • v-if 切换会造成回流和重绘,v-show 则会造成重绘。

关联文章:

visibility: hidden、display: none、opacity: 0 区别

结论

做了以下的实验,可以得出结论,

  • visibility: hidden; 只是在视觉上隐藏,但没有影响布局,但绑定的事件也无法触发。
  • display:none; 元素被彻底隐藏,在页面上完全不显示,不占位,无宽高
  • opacity: 0; 只会修改元素透明度,并不影响布局及事件触发。
阅读全文 »

问题描述

当前端使用 ajax 提交一个表单时,因网络缓慢等原因导致数据没有及时返回数据,导致用户没有得到正确的提示,以为未点中提交按钮,进而在此点击提交按钮,进行提交数据(多半会重复多次点击)

解决方法

  • 禁用按钮,并添加 loading 提示
  • 移除点击事件
  • 结合vue使用
阅读全文 »

软实力

职场效率法则

如何做一个有质量的技术分享

监控

迄今为止最全的前端监控体系搭建篇(长文预警)

前端性能监控(一)指标收集

设计模式

https://www.patterns.dev/

写作

Google 技术写作

提问

提问的智慧

性能优化

页面渲染大量数据的性能优化(时间分片),这篇文章对我影响很大

面试题

系统设计面试题精选

彻底击碎行为问题