vuejs源码问题

看vuejs源码,这段代码有点看不懂,请大佬帮忙释义一下,谢谢!
代码在Vue.js v2.5.16源码的第7653-7661行
var startClass = isAppear && appearClass

? appearClass
: enterClass;

var activeClass = isAppear && appearActiveClass

? appearActiveClass
: enterActiveClass;

var toClass = isAppear && appearToClass

? appearToClass
: enterToClass;

这里的isAppear是什么含义?这段三元操作符的代码整体的是实现什么样的功能?

阅读 2.5k
2 个回答

&& 操作符有一个特性,就是前面的如果为true,则返回后面的,前面的为false,则返回前面的,
在console下测试

var isAppear 
var appearClass ="appearClass"
var startClass = isAppear && appearClass //undefined

isAppear ='isAppear'
var startClass = isAppear && appearClass //"appearClass"

isAppear =false
var startClass = isAppear && appearClass //"false"

var isAppear = !context._isMounted || !vnode.isRootInsert;
判断这个实例是否是已经挂载或者是否作为跟节点插入,当两个都为true的时候,isAppear为false,这样后面startClass、activeClass、toClass就都是enter开头的类,控制组件的css过渡。

dist目录下的代码是打包过后的,看源码还是看src目录下的代码比较好,上面代码对应文档参考vue的官方文档https://cn.vuejs.org/v2/guide...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题