APP的向下兼容
今天再做APP向下兼容4.X版本,发现他不支持ES6的新语法,包括模板字符串,箭头函数等,
js的向下兼容使用babel编译,具体步骤如下
安装gulp和babel
npm install gulp --save-dev
npm install gulp-babel --save-dev
npm install babel-preset-es2015 --save-dev
新建gulpfile.js
//引入gulp,gulp-babel的npm模块;
var gulp = require('gulp');
var babel = require('gulp-babel');
//创建gulp运行代码
gulp.task('babel', function () { //‘babel’ gulp的脚本名称,自定义命名
return gulp.src('1.js') //js入口文件,可用绝对路径、相对路径,是文件类型
.pipe(babel()) //运行gulp-babel进行编译
.pipe(gulp.dest('src')) //编译后的文件输出地址,是文件夹类型
});
新建.babelrc
{
"presets": ["es2015"],
"plugins": []
}
使用gulp babel在命令行中运行
GitHubd地址:https://github.com/zhengyixun/gulp-babel.git
获取手机的版本号
在做向下兼容的时候,js使用babel编译,CSS不支持就没办法了,但是又不能修改高版本的样式,于是针对低版本重新做一个css,那么就需要获取手机的系统的版本号做针对性处理,于是需要获取手机的系统版本信息
Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI、IMSI、型号、厂商等。通过plus.device获取设备信息管理对象
version: 系统版本信息
plus.os.version;
说明:String 类型 只读属性,获取当前操作系统的版本信息,字符串类型数据。平台支持:Android - 2.2+ (支持),iOS - 4.3+ (支持)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Device Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
alert( "OS version: " + plus.os.version );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
获取系统版本信息<br/>
</body>
</html>
在这里有更多的解释,https://blog.csdn.net/qq_27626333/article/details/51815310