当前位置:首页 > uni-app

uniapp存储数据多

2026-03-05 13:57:28uni-app

uniapp 存储数据的方法

uniapp 提供了多种数据存储方式,适用于不同场景的需求。以下是常见的几种方法:

本地存储(LocalStorage)
使用 uni.setStorageSyncuni.getStorageSync 进行同步存储和读取,适合小量、简单的数据存储。
示例代码:

uniapp存储数据多

// 存储数据
uni.setStorageSync('key', 'value');

// 读取数据
let data = uni.getStorageSync('key');

异步本地存储
使用 uni.setStorageuni.getStorage 进行异步操作,避免阻塞主线程。
示例代码:

// 异步存储数据
uni.setStorage({
  key: 'key',
  data: 'value',
  success: function () {
    console.log('存储成功');
  }
});

// 异步读取数据
uni.getStorage({
  key: 'key',
  success: function (res) {
    console.log(res.data);
  }
});

全局变量(globalData)
App.vue 中定义全局变量,适合共享数据但生命周期较短。
示例代码:

uniapp存储数据多

// App.vue
export default {
  globalData: {
    userInfo: null
  }
}

// 页面中获取
let app = getApp();
console.log(app.globalData.userInfo);

数据库存储(SQLite)
对于复杂数据,可以使用 SQLite 插件或云数据库(如 uniCloud)。
示例代码(需引入 SQLite 插件):

// 打开数据库
let db = plus.sqlite.openDatabase('test.db');

// 创建表
db.executeSql('CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY, name TEXT)');

// 插入数据
db.executeSql('INSERT INTO user (name) VALUES (?)', ['张三']);

文件存储
使用 uni.saveFileuni.getFileInfo 存储文件数据,适合大文件或二进制数据。
示例代码:

// 保存文件
uni.saveFile({
  tempFilePath: 'temp/file.jpg',
  success: function (res) {
    console.log(res.savedFilePath);
  }
});

// 获取文件信息
uni.getFileInfo({
  filePath: 'file.jpg',
  success: function (res) {
    console.log(res.size);
  }
});

选择存储方式的建议

  • 临时数据:使用全局变量(globalData)。
  • 简单持久化数据:使用本地存储(LocalStorage)。
  • 复杂结构化数据:使用数据库(SQLite 或 uniCloud)。
  • 大文件或二进制数据:使用文件存储。

根据实际需求选择合适的存储方式,避免过度使用单一方法导致性能问题。

标签: 数据uniapp
分享给朋友:

相关文章

uniapp怎么启动

uniapp怎么启动

启动UniApp项目的步骤 确保已安装Node.js(建议版本12+)和HBuilderX(官方IDE)。若未安装,需先下载并配置环境。 安装开发工具 从HBuilderX官网下载对应操作系统的版本…

引擎uniapp

引擎uniapp

uniapp 引擎概述 uniapp 是一个基于 Vue.js 的跨平台开发框架,允许开发者使用单一代码库构建多端应用(如 iOS、Android、Web、小程序等)。其核心引擎通过条件编译和运行时适…

uniapp 滑动

uniapp 滑动

uniapp 实现滑动效果的方法 在uniapp中实现滑动效果可以通过多种方式,包括使用内置组件、CSS动画或第三方插件。以下是几种常见的方法: 使用scroll-view组件 scroll-vi…

uniapp 编辑

uniapp 编辑

uniapp 编辑功能实现方法 在uniapp中实现编辑功能通常涉及表单处理、数据绑定和状态管理。以下为常见实现方式: 表单数据双向绑定 使用v-model指令实现表单元素与数据的双向绑定: &l…

uniapp广播

uniapp广播

全局事件通信 在UniApp中实现广播功能可通过全局事件机制完成,适用于跨页面或组件通信。使用uni.$emit、uni.$on、uni.$off等方法实现事件的触发、监听与移除。 发送广播(触发事…

uniapp grid

uniapp grid

uniapp grid 布局实现方法 在 uniapp 中实现 grid 布局可以通过多种方式完成,包括使用内置组件、CSS Grid 或第三方插件。以下是几种常见的实现方法: 使用 uni-gri…