Skip to content
uniapp开发和生产环境区分以及运行平台区分

开发和生产环境区分

js
if (process.env.NODE_ENV === 'development') {
	console.log('开发环境');// 发布到生产环境时,此处代码会被摇树移除掉。
} else {
	console.log('生产环境');
}

HBuilderX 中敲入代码块 uEnvDevuEnvProd 可以快速生成对应 developmentproduction 的运行环境判定代码。

js
// uEnvDev
if (process.env.NODE_ENV === 'development') {
	
}
// uEnvProd
if (process.env.NODE_ENV === 'production') {
	
}

判断平台

js
alert('只有h5平台才有alert方法');

如上代码只会编译到 H5 的发行包里,其他平台的包不会包含如上代码。

运行期判断 运行期判断是指代码已经打入包中,仍然需要在运行期判断平台,此时可使用 uni.getSystemInfoSync().platform 判断客户端环境是 Android、iOS 还是小程序开发工具(在百度小程序开发工具、微信小程序开发工具、支付宝小程序开发工具中使用 uni.getSystemInfoSync().platform 返回值均为 devtools)。

js
switch (uni.getSystemInfoSync().platform) {
	case 'android':
		console.log('运行Android上');
		break;
	case 'ios':
		console.log('运行iOS上');
		break;
	default:
		console.log('运行在开发者工具上');
		break;
}