uni-app官网:uni-app官网
常用编译指令
#if 编译预处理中的条件命令,相当于C语法中的if语句
#ifdef 判断某个宏是否被定义,若已定义,执行随后的语句
#ifndef 与#ifdef相反,判断某个宏是否未被定义
#elif 若#if, #ifdef, #ifndef或前面的#elif条件不满足,则执行#elif之后的语句
#else 与#if, #ifdef, #ifndef对应, 若这些条件不满足,则执行#else之后的语句
#endif #if, #ifdef, #ifndef这些条件命令的结束标志.
defined 与#if, #elif配合使用,判断某个宏是否被定义
条件编译
一、仅出现在 App 平台下的代码
#ifdef APP-PLUS
需条件编译的代码
#endif
二、除了 H5 平台,其它平台均存在的代码
#ifndef H5
需条件编译的代码
#endif
三、除了微信小程序平台,其它平台均存在的代码
#ifndef MP-WEIXIN
需条件编译的代码
#endif
四、在 H5 平台或微信小程序平台存在的代码(这里只有||,不可能出现&&,因为没有交集)
#ifdef H5 || MP-WEIXIN
需条件编译的代码
#endif
示例,如下代码会在 H5 平台上出现:
模板里面:
<!-- #ifdef H5 -->
<div>H5</div>
<!-- #endif -->
方法里面:
// #ifdef H5
uni.chooseVideo({
success: (res) => {
console.log(res.result);
}
});
//#endif
注:当你在编译器编写 // #ifdef H5 或者 <!-- #ifdef H5 --> 时可能会因为安装的颜色插件会变成注释的颜色,其实是可以正常使用的