Weex 辅助工具
2023-12-28 15:54 更新
为了方便使用,Weex 提供了一系列辅助模块/插件来实现降级功能。
Npm 模块
- npm 模块主页: https://www.npmjs.com/package/@weex-project/downgrade
- 源码地址: https://github.com/weexteam/downgrade
首先安装 @weex-project/downgrade
模块,然后在页面代码中引入,调用其中的接口即可触发降级。
import downgrade from '@weex-project/downgrade'
提供的接口如下:
force()
强制降级。调用该接口可以无条件立即降级。
downgrade.force()
check(options)
检查环境信息是否满足 options
的描述,返回校验结果,并不会触发降级。
options
的格式见下文详解,返回值的格式如下:
-
isDowngrade
: 是否应该降级(不满足 options
中的条件则为 true
)。 -
errorType
: 错误类型,语义同上,仅 isDowngrade
为true
时才包含。 -
code
: 错误代码,语义同上,仅 isDowngrade
为 true
时才包含。
const result = downgrade.check({ ios: { osVersion: '<=9.0' } })
if (!result.isDowngrade) {
// Do something
}
condition(options)
检查环境信息是否满足 options
的描述,不满足条件则触发降级。 options
的格式见下文详解,没有返回值。
downgrade.condition({
android: {
appVersion: '<=7.8.0',
weexVersion: '<0.16.0'
}
})
Webpack 插件
Weex 提供了一个 Webpack 插件 webpack-plugin-downgrade 支持在打包时注入触发降级的代码。
// webpack.config.js
var DowngradePlugin = require('webpack-plugin-downgrade')
module.exports = {
// other configs ...
plugins: [
new DowngradePlugin({ /* downgrade options */ })
]
}
插件支持的配置项如下:
-
force
: Boolean
是否强制降级。 -
condition
:Object
满足特定条件时才触发降级。具体的配置项见下文详解。
// 强制降级
new DowngradePlugin({ force: true })
// 满足某些条件时降级
new DowngradePlugin({
condition: {
ios: {
deviceModel: ['iPhone5,1']
},
android: {
osVersion: '<=4.4',
weexVersion: '<0.16.0'
}
}
})
以上内容是否对您有帮助:
更多建议: