当然,大多情形之下,并不是很肯定将各种 class, style 的操纵,放置于 Template 中,即便使用 jade 等一些模版语言辅助,也会使得整个 Dom 结构看起来,没那么清晰明朗,能方便切类予以实现的,最好用这种方式,毕竟简洁才美。但,总有些略为复杂的需求,相比于在逻辑中去循环遍历,以操弄 Dom 来动态改变,那么在模版中去操纵 style 反而显得会更优雅;我们已经知道,Mustache语法,可以解析表达式;表达式中可以以 String 来映射对象,数组,想必也可以对应调用其实例中的方法,试一试?
如上例所示,果然,Vue 真是贴心;记得上次做某个看似颇有些复杂的需求,试用此法,将判断逻辑固定 methods 中,免去了再次遍历的无奈,很是优雅的解决问题。这岂能不令人欢喜?更何况,Vue 还提供了其它若干十分人性化的处理方案,譬如:
<a href="javascript:;" @click="onXxxClick(param)"></a> <!-- 阻止单击事件冒泡 --> <a @click.stop="doThisFunc"></a> <!-- 修饰符可以串联 --> <a v-on:click.stop.prevent="doThat"> <div slider(@mouseover="pause && pausePlay()", @mouseout="pause && goPlay()"></div>) <input v-on:keyup.13="submitFuncName"> <input v-on:keyup.enter="submitFuncName"> //为最常用的按键提供别名 <!-- 用 v-model 指令在表单控件元素上创建双向数据绑定 --> <input type="checkbox" v-model="checked"> <label for="checkbox">{\{ checked }\}</label> <!-- 在 "change" 而不是 "input" 事件中更新 --> <input v-model="msg" lazy>
关于 Vue,文档写的再清楚没有了,所以也没有额外啰嗦的必要。但,使用之时毕竟还牵扯到很多插件、库、组件等,涉及诸多不同的机制,对于不是很熟悉的部分,偶尔会陷入一些麻烦;为此也会偶尔将遇到的这些问题,做下整理记录在 Vue 常见问题解决方案记录 。
很久很久以前,荀子《劝学》中有言道: 君子生非异也 善假于物也 ,纵隔千年万载,大有其理。在前端行走的这大半年,十二分感谢有 Vue 这般的器具存在,使得总产生一种感觉,有这利器存在,任何需求插来都不虚。据 学以致用 的道理,那么就先言及于此,边用边学边感慨。
您可能感兴趣的文章: