分类 前端 下的文章

在PC端vue+elemenet使用视频流video.js播放m3u8视频


由于小程序使用了阿里云的点播方式上传视频转码查看,大大的把视频压缩处理了,无论是上传还是查看都速度挺快的。

但是PC上如果使用普通的video标签直接播放m3u8是会出问题的。

所以找到了video.js这个好的插件使用起来得心应手,支持m3u8也支持向的mp4视频格式播放

接下来记录下操作记录:

videojs-github
videojs-官网

一、NPM方式安装使用

1、npm安装video.js

npm install --save-dev video.js

2、在vue脚手架中引入video.js(main.js引入)

import Video from 'video.js' //videojs
import 'video.js/dist/video-js.css' //videocss样式
Vue.prototype.$video = Video //装载Video播放器

3、建立一个子组件方便多个地方使用



npm install 或 npm dev 装第三方组件库依赖报错后通用解决办法


微信图片_20220224101907.png

npm ERR! Cannot set properties of null (setting ' dev' )

删除node_modules、package-lock.json、yarn.lock

npm config get registry 查看自己的仓库源

正常遇到这种报错,直接在集成终端输入以下任意一个命令即可:

npm config set registry http:/registry.npmmirror.com/

npm install --force --registry=https://registry.npmmirror.com

--

本次项目所用的命令:

npm install --force --registry=https://registry.npmmirror.com; cnpm i
image-webpack-loader -D

yarn config set registry https://registry.npmmirror.com

然后npm装第三方组件库的依赖就没有问题啦,运行马上成功


html2canvas在iphone ios15以上出现了罢工,只跳转或者生成的图片是空白


最近刚上线一个新的项目,在商品详情和邀请好友页面有处理到html2canvas生成海报或者商品推广图,然后在2021年苹果升级的ios15系统里生成图片失败了,要么就是空白的,要么就是自动把页面刷新了,报错了。

然后在github的html2canvas问题里面有人提出了这个问题,并给出了解决方案。其实很简单就是在你的canvas海报这个大的元素里面不要使用font-family的某些字体的引用,如:-apple-system,arial等。

但也不能不用字体对吧,我本身全局引用的是这个:font-family:-apple-system,PingFang SC,Helvetica,arial,sans-serif;

然后我通过优先级把html2canvas里面的标签元素都引用了这个,并加上了!important优先级,让标签元素只使用这些字体:font-family: PingFang SC,Helvetica,sans-serif !important;

然后成功了。

下列这是官方有人提出的问题和解决方法提示:

4618673-4ff7b13c0e73885e.jpg


Chrome和360、火狐等浏览器不再支持Flash,我们应该怎么办?有什么替代办法?


微信图片_20210923165711.png

首先,不支持浏览器中的Flash插件并不是一件坏事,因为从最早,网页中的FLash内容就不利于搜索等操作,目前使用h5相关的实现技术,可以同样制作一些动画或者交互内容,而且可以多平台运行。

其次,浏览器上的应用对于Flash来说只是一方面,Flash或者现在Animate软件,可以很便捷的制作二维动画,以及通过脚本开发各种互动软件等内容。

最后,对于不使用Flash开发的人来说,只是单纯的使用者,在浏览器中基本看不到flash制作的内容了。

不是突然就没有了,这几年已经基本都没有了。

那么我们有什么替代的方法没?

目前看,Adobe将FlashPlayer运营交给其它公司后,推出了解决方法,就是让用户安装本地软件,也就是FlashPlayer大厅,这个软件内嵌了浏览器的功能,可以直接打开需要Flash插件的网页。

地址是:https://soft.flash.cn/flashcenter/index.html

下载安装后,关闭浏览器再打开就行了!