当前位置:首页 > uni-app

uniapp 服务文件

2026-02-05 21:22:37uni-app

uniapp 服务文件创建与管理

在uniapp中,服务文件通常用于封装通用的业务逻辑、API请求或工具函数,便于全局调用和维护。以下是创建和管理服务文件的方法。

创建服务文件

在项目的根目录或common文件夹下新建一个service目录,用于存放服务文件。例如创建一个api.service.js文件:

// common/service/api.service.js
const baseUrl = 'https://example.com/api';

export default {
  getList(params) {
    return uni.request({
      url: `${baseUrl}/list`,
      method: 'GET',
      data: params
    });
  },
  postData(data) {
    return uni.request({
      url: `${baseUrl}/submit`,
      method: 'POST',
      data: data
    });
  }
};

全局引入服务文件

main.js中全局引入服务文件,方便在各页面直接调用:

// main.js
import apiService from '@/common/service/api.service.js';

Vue.prototype.$api = apiService;

页面中使用服务

在页面或组件中直接通过this.$api调用服务方法:

export default {
  methods: {
    async fetchData() {
      try {
        const res = await this.$api.getList({ page: 1 });
        console.log(res.data);
      } catch (error) {
        console.error(error);
      }
    }
  }
};

服务文件模块化

将不同业务逻辑拆分为多个服务文件,例如user.service.jsorder.service.js,按需引入:

// common/service/user.service.js
export default {
  login(data) {
    return uni.request({
      url: '/user/login',
      method: 'POST',
      data: data
    });
  }
};

请求拦截与响应处理

在服务文件中统一处理请求和响应,例如添加token或错误处理:

uniapp 服务文件

// common/service/http.service.js
uni.addInterceptor('request', {
  invoke(args) {
    args.header = {
      ...args.header,
      'Authorization': 'Bearer ' + uni.getStorageSync('token')
    };
  },
  fail(err) {
    console.error('请求失败:', err);
  }
});

注意事项

  • 服务文件应保持单一职责,避免过度耦合。
  • 异步请求使用async/awaitPromise处理。
  • 大型项目可使用axios等库替代uni.request,但需注意跨平台兼容性。

通过以上方法,可以高效管理uniapp中的服务文件,提升代码复用性和可维护性。

标签: 文件uniapp
分享给朋友:

相关文章

uniapp分享到facebook

uniapp分享到facebook

使用uniapp分享到Facebook的方法 在uniapp中实现分享到Facebook功能,可以通过调用原生插件或使用第三方SDK。以下是具体实现方式: 安装Facebook SDK插件 在uni…

uniapp组件

uniapp组件

uniapp组件基础概念 uniapp的组件系统基于Vue.js,支持跨平台开发(H5、小程序、App等)。组件分为内置基础组件(如<view>、<button>)和自定义组件…

uniapp设置title

uniapp设置title

设置页面标题的方法 在UniApp中设置页面标题可以通过以下几种方式实现,适用于不同场景和需求。 通过pages.json配置 在pages.json文件中,可以为每个页面单独配置导航栏标题。找到对…

如何编译java文件

如何编译java文件

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证。若未安装,需从Oracle或Open…

甜uniapp

甜uniapp

甜uniapp的定义 甜uniapp并非官方术语,可能是对uniapp开发中“高效、便捷、愉悦”体验的形容,或特定场景下的优化方案。通常指通过技巧、插件或架构设计提升uniapp开发效率和用户体验。…

uniapp混合oc

uniapp混合oc

uniapp 与 Objective-C 混合开发指南 实现原理 uniapp 通过原生插件机制与 Objective-C 交互,需通过原生模块桥接。核心步骤包括编写原生模块、注册插件、在 uniap…