热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于vue2.0+weex开辟app当中碰到的题目(爬坑之旅)

前端小白一枚,经由过程打仗一段时间的weex,谈下本身的主意和个中遇到的题目如今先来说下遇到的题目:在一个页面中是video列表,要依据转动来掌握该哪一个视频来播放tab页面内里有

前端小白一枚,经由过程打仗一段时间的 weex,谈下本身的主意和个中遇到的题目

如今先来说下遇到的题目:

  1. 在一个页面中是 video 列表,要依据转动来掌握该哪一个视频来播放

  2. tab 页面内里有差别的数据列表,各个 tab 页面的革新和加载状况没法重置题目

  3. ….

遇到的两个大的题目,内里另有诸多的小题目

献上处理办法:

依据 weex 内里 video 标签和 weex 的 appeardisappear 通用事宜来处理的,内里的具体内容,人人能够看这里:

http://weex.apache.org/refere…

贴出代码:

使用到 osc-video.vue 的文件





osc-video.vue






设置得分数
js:data(){return {score: 0,autoPlay:autoPlay,paly_direction:null}}
methods:{
onappear(e){
this.paly_direction=e.direction
this.score += 20;
this.notify_score_changed();
},
//依据appear和disappear触发score_change
notify_score_changed:function(){
this.$emit("score_change",this);
},
ondisappear(e){
this.paly_direction=e.direction
this.score -= 20
this.notify_score_changed();
}
},
在mounted中监听播放事宜
mounted(){
this.$on("play",(e)=>{
this.playStatus=e

})
}

在父组件中,先建立寄存得分数的数组 score_item 和当前应该播放的视频的current_play

data(){score_time:[],current_play:null},
methods:{
createscorelist:function(obj){

let nIndex = this.score_item.indexOf(obj) ;
console.log("score changed: " + obj.score)
if(obj.score == 0)
{
if(nIndex >= 0)
{
this.score_item.splice(nIndex,1)
}
}
if(nIndex<0){
/// TODO, scroll up /down
/// 刚进入video列表没有转动时 会以为play_direction是undefined
if(obj.paly_direction==undefined || obj.paly_direction=="up" ) {
this.score_item.push(obj)
}else{
this.score_item.unshift(obj)
}
}
console.log("score arr:" + nIndex + " length:" + this.score_item.length)
},
controlPlay(){
let score_high = 0;
let might_play = null
for(let i=0;i let v=this.score_item[i]
if(v.score > score_high){
score_high = v.score
might_play = v
}
}
// console.log("current score:" + score_high)
if(this.current_play == might_play){
return
}
if(this.current_play != null){
this.current_play.$emit('play', 'pause')
}
this.current_play = might_play
this.current_play.$emit('play', 'play')
},
score_change(e){
this.createscorelist(e)
this.controlPlay();
}
}

至此视频列表能够转动播放, 当满环欣喜的去看时 ,却又发明了一个题目, 是在数据刚进入页面以后, 视频不会自动的播放, 然则当上拉或许下拉以后, 视频才能够播放,
厥后发明是因为数据还没有加载胜利,播放状况的值没法去举行设置,找到了处理方法:在进入页面以后,推断一下播放的状况,然后在设置自动播放。

在 video 组建中增添属性 autoPlay:autoPlay以及在监听事宜 play 中增添为

mounted(){
this.$on("play",(e)=>{
this.playStatus=e
if(e=="play"){
this.autoPlay=play
}else{
this.autoPlay=pause
}
})
},

如今这个题目已处理终了,后续会增添上第二个题目的处理方案。

打仗以后的主意:最先原本想着做三端一致的,然则在厥后开辟中遇到不少的坑,很难做到一套模板,三端通用,就舍弃了 web 端 只专注 android 和 ios,如今项目还在举行中,后续遇到的题目和处理方案也会加进来。

逐步举行,爬坑之旅,

《&#8211;愿望人人多多指导&#8211;》


推荐阅读
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 本文介绍了在Vue项目中如何结合Element UI解决连续上传多张图片及图片编辑的问题。作者强调了在编码前要明确需求和所需要的结果,并详细描述了自己的代码实现过程。 ... [详细]
  • 在编写业务代码时,常常会遇到复杂的业务逻辑导致代码冗长混乱的情况。为了解决这个问题,可以利用中间件模式来简化代码逻辑。中间件模式可以帮助我们更好地设计架构和代码,提高代码质量。本文介绍了中间件模式的基本概念和用法。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 本文介绍了在使用vue和webpack进行异步组件按需加载时可能出现的报错问题,并提供了解决方法。同时还解答了关于局部注册组件和v-if指令的相关问题。 ... [详细]
  • 李逍遥寻找仙药的迷阵之旅
    本文讲述了少年李逍遥为了救治婶婶的病情,前往仙灵岛寻找仙药的故事。他需要穿越一个由M×N个方格组成的迷阵,有些方格内有怪物,有些方格是安全的。李逍遥需要避开有怪物的方格,并经过最少的方格,找到仙药。在寻找的过程中,他还会遇到神秘人物。本文提供了一个迷阵样例及李逍遥找到仙药的路线。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 本文讨论了在Vue组件中,为什么data属性要返回一个函数的问题。通过示例代码,说明了对象变量和对象函数在数据更改前后的影响。 ... [详细]
  • 一、什么是闭包?有什么作用什么是闭包闭包是定义在一个函数内部的函数,它可以访问父级函数的内部变量。当一个闭包被创建时,会关联一个作用域—— ... [详细]
author-avatar
小妖694_807
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有