Vue跨端项目里怎么处理平台差异代码?

端木福萍 阅读 4

最近用 Vue + UniApp 做一个同时跑在微信小程序和 H5 上的项目,有些组件在不同平台表现不一样。比如我想在 H5 里用 div,在小程序里用 view,但写成条件编译又觉得维护麻烦。有没有更优雅的方式?

我试过用 process.env 平台判断,但好像在模板里不生效。现在临时这么写的:

<template>
  <view v-if="isH5">H5 内容</view>
  <view v-else>小程序内容</view>
</template>

<script>
export default {
  computed: {
    isH5() {
      return uni.getSystemInfoSync().platform === 'h5';
    }
  }
}
</script>

但感觉每次都要写 computed 很啰嗦,有没有推荐的最佳实践?

我来解答 赞 1 收藏
二维码
手机扫码查看
暂无解答

暂无解答