AVM(Application-View-Model)前端组件开发模型基于标准的WebComponents组件化思想,提供包括虚拟DOM和Runtime的avm.js编程框架和多端统一编译工具,完全兼容WebComponents标准,也兼容Vue和React语法糖编写代码。编译工具将Vue和React相关的语法糖编译成avm.js代码。基于标准的WebComponents组件化思想,兼容Vue/React语法特性。通过一次编码,分别编译成App和小程序代码,实现多端开发。组件功能介绍用于循环显示一组消息通知。首先是组件的整体布局,分为左右两部分。左边是标题或图标,右边是消息容器框。接收父组件传来的消息列表数组,通过v-for循环将所有消息填充到简单框内。<文本类="easy-notice-bar_item-title">{item.id}{item.content}传递溢出:隐藏;隐藏多余的通知消息,保证只显示一条通知消息。.easy-notice-bar_item-box{height:20px;overflow:hidden;flex:1;margin:auto;}通过延迟器,每次将数组的第一位添加到数组的最后一位,并且然后删除第一个位,这样显示的就是下一个。第二次运行时,会继续将当前第一个元素(即原来的第二个)添加到数组的最后一位,并删除当前位,使下一个元素成为第一个,以此类推。noticeScroll(){this.data.istop=true;setTimeout(()=>{this.props.list.push(this.props.list[0]);this.props.list.shift();this.data.istop=false;},5000);},通过一个定时器实现循环this.data.timer=setInterval(()=>this.noticeScroll(),2000);在循环执行的时间间隔内,先完成将容器框向上移动的效果,然后继续改变消息数组的顺序,使当前显示的消息通知放在第一个位置,然后取消过渡动画,并在事件到达后重复执行。为了方便展示效果,我取消了容器框的overflow:hidden。实际效果是这样的。添加容器框的overflow:hidden属性就是完整的效果。组件开发组件文件easy-notice-bar.stml{item.id}{item.content}组件使用说明项目中的具体使用步骤是,第一步将压缩文件中的easy-notice-bar.stml文件复制到项目的components目录下,通过阅读readme.md文档和查看demo示例文件demo-easy-notice-bar.stml在需要开发的stml文件中,导入组件文件,在页面的开发文件目录下完成实际项目中需要的其他组件,自己尝试封装组件。这是组件开发的在线文档地址