最近项目里面有个新需求,试卷预览,里面有选择题,但是每道选择题的选项长短不一,产品要求,如果选项比较短,就一行展示,如果长,就一行展示一项
思路:页面加载完判断,所有选项的长度加起来是否超过外层宽度的100%,如果超过给父级加一个wrap类名
实现方法:如图所示,一个ul代表一个题目的选项,changeWrap()是一个判断是否换行的事件,第一个参把对应的ul传过去,得到所有的li的宽度,注意事件里面要写$nextTick(页面一定要渲染完成之后再执行),得到总宽度之后去和页面宽度对比,分别返回true和false,此时第二个注意的点,不能直接通过changeWrap事件去返回true、false,因为在页面加载的时候,这个事件不会执行,应该在changeWrap事件里面,去更改页面的数据,然后驱动视图更新。