Vue2.4中$attrs和$listeners的使用-学习笔记

首先我们来看下面的一张图,图中表示一个多级组件嵌套的情形。

现在我们来讨论一种情况,A组件与C组件怎么通信,我们有多少种解决方案?

  1. 我们使用VueX来进行数据管理,但是如果项目中多个组件共享状态比较少,项目比较小,并且全局状态比较少,那使用VueX来实现该功能,并没有发挥出VueX的威力。
  2. 使用B来做中转站,当A组件需要把信息传给C组件时,B接受A组件的信息,然后利用属性传给C组件,这是一种解决方案,但是如果嵌套的组件过多,会导致代码繁琐,代码维护比较困难;如果C中状态的改变需要传递给A, 使用事件系统一级级往上传递 。本来
  3. 自定义一个Vue 中央数据总线,这个情况适合碰到组件跨级传递消息,但是使用VueX感觉又有点浪费的项目中,但是缺点是,碰到多人合作时,代码的维护性较低,代码可读性低

在很多开发情况下,我们只是想把A组件的信息传递给C组件,如果使用props 绑定来进行信息的传递,虽然能够实现,但是代码并不美观。

在vue2.4中,为了解决该需求,引入了$attrs$listeners , 新增了inheritAttrs 选项。 在版本2.4以前,默认情况下父作用域的不被认作props的属性属性百年孤独,将会“回退”且作为普通的HTML特性应用在子组件的根元素上。如下列的例子

阅读 “Vue2.4中$attrs和$listeners的使用-学习笔记”

天青色等夜雨,而我在等你

天青色等烟雨 而我在等你

这估计是周杰伦的《青花瓷》中,我最喜欢的一句歌词了,我还给自己喜欢的一个女孩子唱过这一段,但是直到现在才发现自己对这句词的理解太过肤浅了。

一个偶然的机会,看了马未都对《青花瓷》这首歌一个评价,才知道天青色等烟雨的意思。话说他有次碰到方文山,就说青花瓷的歌词中有两处错误,一个是“天青色等烟雨”,这个应该说的是汝瓷。方文山说,本来这首歌的的歌名应该取为《汝瓷》的。但是为了推广,取名为《青花瓷》。

天青色等烟雨,其实是很有意境的一句话,如果对汝窑的历史不太清楚的话,无法体会这句话是包含着对希望的一个等待,真如《肖申克的救赎》中 Hope is a good thing 一样。

汝窑
汝瓷

宋代的时候有五大名窑,分别为“汝、官、哥、钧、定”。宋代汝瓷到现在保留下来的听说只有67件左右,很是稀少,有句话叫“纵有家财万贯,不如汝瓷一片”。

宋微宗在位时,宋国处于内忧外患的时,内部,改革派和保守派的矛盾纠纷,外部有与金国的利益矛盾。宋微宗是一个不关心国事,然后他又是个兴趣爱好特别广泛的人。他形容天青色为“雨过天青云破处,者般颜色做将来”。意思就是说下雨过来,云层破来,太阳出来,天空的颜色,叫天青色。也就是只有下雨过后,天空的颜色,叫天青色。这代表着一种希望(我个人的理解),但是当时宋微宗的理解是啥,我不太清楚。为了一睹汝瓷的风采,我还特意跑到国家博物馆去看一下,但国博只有一件,还是一个小物件,然后上网一查,才知道故宫博物馆有20来件,我是跑错了地方。

汝窑的历史随着北宋而亡,宋人南渡,建立南宋,估计当时的王公贵族看到身边的汝瓷,有多少感叹,宋人希望什么时候能打回去,如陆游所写”王师北定中原日,家祭无忘告乃翁“,能代表那时宋人情怀吧,而汝瓷估计承载着这种情怀。

还原真实的MV*模式(转)

本文转自https://github.com/livoras/blog/issues/11 

前言

做客户端开发、前端开发对MVC、MVP、MVVM这些名词不了解也应该大致听过,都是为了解决图形界面应用程序复杂性管理问题而产生的应用架构模式。网上很多文章关于这方面的讨论比较杂乱,各种MV模式之间的区别分不清,甚至有些描述都是错误的。本文追根溯源,从最经典的Smalltalk-80 MVC模式开始逐步还原图形界面之下最真实的MV模式。

GUI程序所面临的问题

图形界面的应用程序提供给用户可视化的操作界面,这个界面提供给数据和信息。用户输入行为(键盘,鼠标等)会执行一些应用逻辑,应用逻辑(application logic)可能会触发一定的业务逻辑(business logic)对应用程序数据的变更,数据的变更自然需要用户界面的同步变更以提供最准确的信息。例如用户对一个电子表格重新排序的操作,应用程序需要响应用户操作,对数据进行排序,然后需要同步到界面上。

在开发应用程序的时候,以求更好的管理应用程序的复杂性,基于职责分离(Saparetion of Duties)的思想都会对应用程序进行分层。在开发图形界面应用程序的时候,会把管理用户界面的层次称为View,应用程序的数据为Model(注意这里的Model指的是Domain Model,这个应用程序对需要解决的问题的数据抽象,不包含应用的状态,可以简单理解为对象)。Model提供数据操作的接口,执行相应的业务逻辑。

MV*M架构模式示意图

有了View和Model的分层,那么问题就来了:View如何同步Model的变更,View和Model之间如何粘合在一起。

带着这个问题开始探索MV模式,会发现这些模式之间的差异可以归纳为对这个问题处理的方式的不同。而几乎所有的MV模式都是经典的Smalltalk-80 MVC的修改版。阅读 “还原真实的MV*模式(转)”

《手把手教你读财报2-18节课看透银行业》-笔记一

财报是用来排除公司的,我们看年报,主要看资产负债表,看现金流,然后根据国家政策,公司的发展方向市场情况去决定是否买一个公司股票。这就好像一个女孩挑选自己的未来的丈夫,会看各个方面。

乐视的为梦想窒息的口号,但是当你现金流断了的时候,绝对是面临死亡的窒息是不对的。但是看银行,去看现金流,银行是一个“印伪钞”单位,这种方式去看银行,绝对是错误的。

银行是怎么印伪钞的,这里我们要明白一个概念,“法定存款准备金

法定存款准备金

银行的监管机构规定了银行增加存款时,必须按照一定比例上缴以备提取。这部分强制缴纳的钱叫“法定存款准备金”。这个缴纳比例叫“法定存款准备金率”。法定存款准备金具体按照什么比例缴纳,由中国人民银行制定。

阅读 “《手把手教你读财报2-18节课看透银行业》-笔记一”

怎么去定投指数基金

懒惰而爱做白日梦的我们

Hello,大家好,作为普通大众,我们的收入基本是我们的工资,但是并没有稳定的工作,那为了能够静静的看看日落,我们需要使我们的钱能够创造更大的价值,一方面我们可以用来消费,提高自己生活品质,另一方面可以投资自己,学习。

投资的方式千万种,但有些人就是想用钱赚钱,而能看到实实在在的数字,自己操控,感觉踏实 。那该怎么办了,在中国投资的渠道又太少,买股票,里面的道道太多,关键是自己看不懂,没有能力。就是一个字,“”。

懒惰的我们

但是懒人的钱好赚,科技的发展会使我们越来越懒。我们看不懂股票,看不透走势,我们只想怎么赚钱。赚钱难啊。在中国股市中,炒股的人,7赔1赚1平 。

很多人想保值,跑赢cpi,跑赢gdp.  于是在牛市的到来,疯狂几个月,失落几个月,最终上天台。心里面来了一句,我家住在黄土高坡。风好,水也好。阅读 “怎么去定投指数基金”