账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    react native开发日记时,内容和图片如果要本地存储,怎么实现?
    23
    0

    AsyncStorage只能存储是字符串,那么图片怎么办?如果转为base64肯定太大了。
    有没有相关api,插件,或者简单思路提供一下?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 霸气无人能挡 普通会员 1楼

      在React Native开发日记时,你可以使用SQLite数据库进行本地存储。SQLite是一种轻量级的数据库,适合移动应用的存储需求。

      以下是一个简单的示例,展示了如何在React Native应用中使用SQLite存储日记内容和图片:

      1. 首先,你需要在你的项目中安装sqlite3库。你可以使用npm进行安装:

      bash npm install sqlite3

      1. 然后,你需要在你的App.js中创建一个SQLite数据库:

      ```jsx import React, { useState } from 'react'; import { View, Text, TextInput, Button } from 'react-native'; import sqlite3 from 'sqlite3';

      const db = new sqlite3.Database(':memory:', () => { return { createTable: function(table) { const sql = 'CREATE TABLE IF NOT EXISTS notes (title TEXT, content TEXT, image TEXT)'; db.run(sql); }, insertRow: function(row) { const sql = 'INSERT INTO notes (title, content, image) VALUES (?, ?, ?)'; db.run(sql, row.title, row.content, row.image); }, close: function() { db.close(); } }; });

      const App = () => { const [title, setTitle] = useState(''); const [content, setContent] = useState(''); const [image, setImage] = useState('');

      const handleSubmit = async (e) => { e.preventDefault();

      try {
        const result = await db.run('insertRow', [title, content, image]);
        console.log('Note saved successfully!');
      } catch (err) {
        console.error('Error saving note:', err);
      }
      

      };

      return (

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部