Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >React Native中的多个领域在安装后首次启动应用程序时无法正确查询领域对象服务器

React Native中的多个领域在安装后首次启动应用程序时无法正确查询领域对象服务器
EN

Stack Overflow用户
提问于 2017-03-02 21:07:14
回答 1查看 699关注 0票数 3

我在React Native中处理多个领域时遇到了一个问题。我正在开发一个应用程序,它允许用户在没有订阅的情况下使用应用程序(使用本地领域),然后在他们的应用程序旅程中的任何时候,他们都可以选择升级到具有同步功能的订阅(使用同步到领域对象服务器)。

当我启动应用程序时,我会检查他们是否在使用同步,如果是的话,我会初始化一个与他们的用户同步的领域,一切都很好。我得到了我想要的所有数据。

然而,当应用程序在安装后第一次启动时启动(安装后第一次启动是至关重要的),并且我看到他们没有使用同步,我会初始化一个本地域,我将数据保存到这个域中,直到他们决定登录到他们的同步帐户(如果他们有一个)。此时,我尝试从同步领域获取信息,但它没有我仅在初始化同步领域时看到的信息(在应用程序启动时,我检测到它们使用同步)。

我可以作为同步用户登录,但是如果我之前初始化了一个本地域,那么数据就不在那里,并且这个逻辑在安装后第一次启动应用程序时运行。只有当我在第二次启动应用程序时初始化本地和同步的领域时,数据才会从领域对象服务器中显示出来(启动前没有重新安装)。

下面是一个包含虚拟数据的简单测试脚本,我可以用它来复制观察到的行为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const username = 'testuser2';
const password = 'supersecret';
const tld = 'REALM_OBJECT_SERVER_TLD';

class Test extends Realm.Object {}
Test.schema = {
  name: 'Test',
  properties: {
    id: {
      type: 'string',
    },
  }
};

function initLocalRealm() {
  return new Realm({
    path: 'local.realm',
    schema: [Test],
  });
}

function initSyncedRealmWithUser(user) {
  return new Realm({
    path: 'synced.realm',
    sync: {
      user,
      url: `realm://${tld}:9080/~/data`,
    },
    schema: [Test],
  });
}

function writeTestObjectWithId(realm, id) {
  realm.write(() => {
    realm.create('Test', {
      id,
    });
    alert(`Test object with id: ${id}`);
  });
}

initLocalRealm();

// setup
// uncomment this and comment out the login section to setup user on first run
// Realm.Sync.User.register(`http://${tld}:9080`, username, password, (error, user) => {
//   if (error) {
//     return;
//   }
//   const syncedRealm = initSyncedRealmWithUser(user);
//   writeTestObjectWithId(syncedRealm, '1');
// });

// login
Realm.Sync.User.login(`http://${tld}:9080`, username, password, (error, user) => {
  if (error) {
    return;
  }
  const syncedRealm = initSyncedRealmWithUser(user);
  alert(`Synced realm test objects: ${syncedRealm.objects('Test').length}`);
});

如果您创建了一个react原生应用程序,然后将此代码添加到main components componentDidMount函数中,您应该会看到,在应用程序的第一次运行时(在取消注释注册代码一次之后),您将看到测试集合长度为0,但是当您刷新时,您将看到测试集合长度为1。

这方面的任何帮助都将是非常棒的。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-03-15 09:23:02

运行您的代码片段,只要我取消对login部分的注释,就会立即得到长度为1。您是否可以尝试使用Realm Browser观察您的同步域,并查看在注册用户后,它是否具有您期望的数据?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42565970

复制
相关文章
【opencv】cv::Mat 公有属性 (Public Attributes)
创建一个5×5×3的3维矩阵,数据类型为8bit无符号数,初始值都为(0,0,255):
JNingWei
2020/03/12
1.5K0
【opencv】cv::Mat 图像格式 (Data Type)
由于 at 方法接受的是 uchar 这样的数据类型,而非 CV_8U。 若是要使用 at 方法访问数据元素,在已知通道数和每个通道数据类型的情况下,指定给 at 方法的数据类型如下表所示:
JNingWei
2020/03/12
8.1K0
【opencv】cv::Mat 公有成员函数 (Public Member Func)
用来度量每一个像素中每一个通道的精度,但它本身与图像的通道数无关。 depth数值越大,精度越高。 Mat.depth()得到的是一个0~6的数字,分别代表不同的位数,对应关系如下:
JNingWei
2020/03/12
1.2K0
opencv 将内存中图片读入到mat矩阵
平常用的比较多的是 imread函数,直接将一个.jpg或者.bmp或者其他格式图片文件,读入到mat矩阵中。
战神伽罗
2019/07/22
4.1K0
将mat格式中加标签的数据分为:训练集、验证集、测试集
<span style="font-size:18px;">分出来的三个集合可能存在交集。</span> %%将一部分MontData 放入到OhmData里面 clear all;close all;clc; load Mont_data; kk1=randperm(size(train,1),2000); kk2=randperm(size(train,1),4000); kk3=randperm(size(train,1),5000); TempMontData1=train(kk1); TempMo
MachineLP
2022/05/09
8530
C++:Armadillo与OpenCV矩阵数据mat、vec、Mat的格式转换
  本文介绍在C++语言中,矩阵库Armadillo的mat、vec格式数据与计算机视觉库OpenCV的Mat格式数据相互转换的方法。
疯狂学习GIS
2023/06/26
3450
C++:Armadillo与OpenCV矩阵数据mat、vec、Mat的格式转换
Python - 读写 Matlab Mat 格式数据
如果 matlab 保存 data 时,采用的是 ‘-v7.3’,scipy.io.loadmat函数加载数据会出现错误:
AIHGF
2019/02/18
4.8K0
SD模块基础教程(三十九):将收货方分配给订货方
声明:本文章仅用于SAP软件的应用与学习,不代表SAP公司。(注:文中所示截图来源SAP软件,相应著作权归SAP所有。)
齐天大圣
2021/02/24
4730
SD模块基础教程(十二):将工厂分配给销售组织/分销渠道
声明:本文章仅用于SAP软件的应用与学习,不代表SAP公司。(注:文中所示截图来源SAP软件,相应著作权归SAP所有。)
齐天大圣
2021/02/24
5370
SD模块基础教程(十一):将销售组分配给销售办公室
声明:本文章仅用于SAP软件的应用与学习,不代表SAP公司。(注:文中所示截图来源SAP软件,相应著作权归SAP所有。)
齐天大圣
2021/02/24
7350
使用MAT元数据匿名工具包
MAT:Metadata Anonymisation Toolkit 什么是元数据Metadata? 元数据是描述其它数据的数据(data about other data), 比如一张图片是图像数
Spaceack
2020/11/04
6220
使用MAT元数据匿名工具包
解决方案-vector初始化后存放Mat,出现Mat矩阵数据同变问题
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处
全栈程序员站长
2022/09/28
5160
解决方案-vector初始化后存放Mat,出现Mat矩阵数据同变问题
MAT启动报错
下载Eclipse Memory Analyzer在mac上打开的时候出现以下异常:
JavaEdge
2021/02/22
8780
MAT启动报错
使用python读取matlab数据文件.mat
传送门 http://blog.stackoverflow.club/hdf5-usage/
羽翰尘
2019/11/19
2.5K0
OpenCV2 计算机视觉应用编程秘籍:1~5
本章将教您 OpenCV 的基本元素,并向您展示如何完成最基本的任务:读取,显示和保存图像。 在开始使用 OpenCV 之前,需要安装该库。 这是一个简单的过程,将在本章的第一部分中进行说明。
ApacheCN_飞龙
2023/04/27
3.1K0
SAP RETAIL MM41 不能将Class分配给商品主数据
我们知道在SAP制造业里,物料主数据有独立的分类视图(Classification View),用于将物料号分配物料Class或者批次Class.
SAP虾客
2021/10/08
4950
OpenCV中各种类型Mat数据读取
OpenCV中Mat作为图像容器对象,支持各种数据类型像素值的存储与读取,但是初学者经常因此被被搞得很头大,无法正确的读取不同类别的数据。本文就来详细解释一波各个数据类别,以及不同类别之间的数据转换,搞定Mat中的数据类型问题。
OpenCV学堂
2019/07/12
4.2K0
OpenCV中各种类型Mat数据读取
【Android 内存优化】使用 Memory Analyzer ( MAT ) 工具分析内存 ( hprof 文件转换 | MAT 工具下载 | MAT 工具使用 )
内存泄漏原理 : 长生命周期对象 , 持有短生命周期对象的引用 , 并且是强引用持有 , GC 无法释放该短生命周期对象引用 , 造成 OOM ;
韩曙亮
2023/03/27
8.2K0
【Android 内存优化】使用 Memory Analyzer ( MAT ) 工具分析内存 ( hprof 文件转换 | MAT 工具下载 | MAT 工具使用 )
Opencv中数据结构Mat的相关属性
剑影啸清寒
2018/01/02
2.1K0
Opencv中数据结构Mat的相关属性
点击加载更多

相似问题

读取数据cv::Mat

36

将多维cv::Mat转换为std::vector<cv::Mat>&

252

cv::Mat aaa()与cv::Mat aaa=cv::Mat()的区别;

11

断言失败CV_Assert( CV_IS_MAT(objectPoints) & CV_IS_MAT(imagePoints) & CV_IS_MAT(A) & CV_IS_MAT(rvec) & CV_IS_MAT(tvec) )

10

使用"const cv::Mat &“、"cv::Mat &”、"cv::Mat“或"const cv::Mat”作为函数参数的区别?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文