uni-app一周 D 报(2018-10-15)

发布于 1周前 作者 itying888 来自 Uni-App

uni-app一周 D 报(2018-10-15)

uni-app

  • 内置地图更新为原生的高德地图后,层级和覆盖物的问题。:可以暂时使用问题中回复的方案,后面会支持 cover-view 来更方便地处理。
  • uni-app 不支持右滑关闭页面么? iOS 平台是支持的不需要额外配置,Android 平台不支持。
  • uni-app 有没有小程序中的 live-pusher 类似组件? 相关的组件等内容,还未完善。
  • uni-app 如何获取应用的 version? App 平台下需要调用 plus.runtime.version 来获取,参考 hello uni-appApp.vue。小程序的升级是小程序云服务统一管理的,不存在应用版本号的概念。
  • uni-app 中可以使用 Vant 的小程序库么? uni-app 中支持使用小程序的组件,详见文档:小程序组件支持
  • uni.getStorageInfo 的支持:App 平台还未支持此 API。
  • nvue 文件里import,无法使用uni-app内置文件:其实这个问题的重点在于如何实现 nvue 和 vue 的数据共享。因为 uni-app 中 vue 和 nvue 是两个独立的环境,并不能完全通用。只有部分 uni 的 API 是可以通用的,因此需要使用 uni.storage 相关的 API 来实现数据的共享。
  • uni-app请问如何隐藏滚动条,能否使用5+api:可以在 app-plus 中配置,详见问题回复。

其它问题

开源与分享

更多分享,请前往 精华区 查看。

欢迎更多的同学参与进来,分享自己的经验心得。

结束

本期周报就到这里,感谢大家的阅读。新的一周,祝大家工作顺利。

图片


1 回复

uni-app一周D报(2018-10-15)技术分享

各位开发者好,又到了我们一周技术分享的时间。本周,我们主要聚焦于uni-app在开发过程中的一些实用技巧和代码示例,帮助大家更高效地使用uni-app进行跨平台开发。

1. 跨平台样式适配

在uni-app中,为了实现不同平台的样式适配,我们可以使用%vw/vh等相对单位,并结合uni.getSystemInfoSync()方法获取设备信息,动态调整样式。以下是一个简单的示例:

// 获取系统信息
const systemInfo = uni.getSystemInfoSync();
const screenWidth = systemInfo.screenWidth;

// 假设我们有一个容器,需要在不同平台上保持宽度的一致性
Page({
    data: {
        containerWidth: screenWidth * 0.9  // 假设容器宽度为屏幕宽度的90%
    }
});
<!-- 在页面中使用这个容器 -->
<view class="container" style="width: {{containerWidth}}px;">
    <!-- 容器内容 -->
</view>

2. 网络请求封装

在进行网络请求时,为了简化代码和提高可维护性,我们通常会对请求进行封装。以下是一个简单的请求封装示例:

// 封装请求函数
function request(url, method = 'GET', data = {}, header = {}) {
    return new Promise((resolve, reject) => {
        uni.request({
            url: url,
            method: method,
            data: data,
            header: header,
            success: (res) => {
                if (res.statusCode === 200) {
                    resolve(res.data);
                } else {
                    reject(new Error('请求失败,状态码:' + res.statusCode));
                }
            },
            fail: (err) => {
                reject(err);
            }
        });
    });
}

// 使用封装后的请求函数
request('https://api.example.com/data', 'GET')
    .then(data => {
        console.log('请求成功,数据:', data);
    })
    .catch(err => {
        console.error('请求失败:', err);
    });

3. 生命周期函数的使用

在uni-app中,页面和组件都有自己的生命周期函数。合理使用这些函数可以帮助我们更好地管理资源和状态。以下是一个简单的示例,展示了如何在页面中使用生命周期函数:

Page({
    onLoad() {
        console.log('页面加载');
        // 可以在这里进行页面初始化操作
    },
    onReady() {
        console.log('页面已就绪');
        // 可以在这里进行DOM操作或调用接口
    },
    onShow() {
        console.log('页面显示');
        // 可以在这里进行页面显示时的操作
    },
    onHide() {
        console.log('页面隐藏');
        // 可以在这里进行页面隐藏时的操作,如暂停音乐等
    }
});

以上就是本周uni-app的技术分享内容,希望这些示例和技巧能够帮助大家更好地进行跨平台开发。如果有任何问题或建议,欢迎随时与我们交流。

回到顶部