O Couchbase Lite é um banco de dados NoSQL projetado para dispositivos móveis e incorporados, permitindo o gerenciamento contínuo de dados, mesmo em ambientes off-line. Hoje, tenho o prazer de apresentar o novo React Native - Módulo nativo para Couchbase Liteagora disponível em versão beta pública no NPM.
Por que usar o React Native com a Expo?
Criar aplicativos móveis com o React Native básico pode ser bastante desafiador devido às complexidades do gerenciamento de roteamento, módulos e infraestrutura de aplicativos. É aqui que frameworks como Expo para tornar o desenvolvimento mais acessível. A Expo se tornou a estrutura mais popular para aplicativos React Native, e a equipe do React Native agora recomenda usá-lo em novos projetos, especialmente por seu SDK avançado e pela facilidade de uso.
Nosso Native Module foi projetado para funcionar perfeitamente com aplicativos Expo e React Native. Para os usuários da Expo, a execução do aplicativo em modo dev-cliente dará acesso a módulos nativos, facilitando a integração com o Couchbase Lite. Aqui está um guia de instalação detalhado para começar.
Repositório e projeto de código aberto
Você pode acessar o React Native - Módulo nativo para o repositório Couchbase Lite. Por ser um projeto de código aberto, todos os quadros e problemas do projeto são monitorados pelo GitHub. Incentivamos os desenvolvedores a verificar o projeto, relatar problemas e contribuir.
Um exemplo importante é o expo-cbl-travel que apresenta os recursos do Couchbase Lite, como replicação, consulta SQL++ e FTS (Full-Text Search). Esse projeto foi desenvolvido para funcionar com Serviços de aplicativos do Couchbase Capella. Facilitamos para os desenvolvedores, fornecendo um guia passo a passo para configurar o Couchbase Capella's Nível livre para uso com o aplicativo móvel. Você pode encontrar o repositório expo-cbl-travel aqui. Você pode assistir ao vídeo passo a passo aqui:
Um exemplo simples com o Couchbase Lite
Aqui está um breve exemplo de como é fácil interagir com o Couchbase Lite usando o React Native Module. Isso demonstra a abertura de um banco de dados, a recuperação de um documento, sua modificação e o salvamento das alterações:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
importação { Banco de dados, DatabaseConfiguration, Sistema de arquivos, MutableDocument } de 'cbl-reactnative'; //Obter um caminho de arquivo no qual você pode gravar o arquivo de banco de dados para cada plataforma const fileSystem = novo Sistema de arquivos(); const directoryPath = aguardar fileSystem.getDefaultPath(); const dc = novo DatabaseConfiguration(); dc.setDirectory(directoryPath); // Abrir (ou criar) um banco de dados const banco de dados = novo Banco de dados('myDatabase', dc); const coleção = aguardar banco de dados.createCollection("myCollection", "myScope"); //criar documento const documentId = 'doc-1'; const mutableDoc = novo MutableDocument(documentId); mutableDoc.setString('firstName', 'Denis'); /salvar no banco de dados aguardar coleção.salvar(mutableDoc); // Obter um documento por ID deixar documento = coleção.documento(documentId); deixar mutableDoc2 = MutableDocument.fromDocument(documento); se (mutableDoc2) { // Modificar o documento mutableDocument2.setString('lastName', "Doe"); mutableDocument2.setInt('idade', 30); // Salvar o documento banco de dados.save(mutableDocument2); console.log('Documento atualizado com sucesso!'); } mais { console.registro(`Documento com ID ${documentId} não encontrado.`); } // Feche o banco de dados quando terminar banco de dados.próximo(); |
Neste exemplo:
-
- Um novo banco de dados chamado my-database é criado (ou aberto, se já existir)
- Criamos um documento mutável com o ID doc-1
- Modificamos o documento adicionando um campo firstName e definindo o valor
- Em seguida, salvamos o documento
- Em seguida, obtemos o documento de volta do banco de dados
- Se o documento existir, modificaremos suas propriedades de nome e idade
- O documento modificado é então salvo de volta no banco de dados
Esse trecho de código simples demonstra o poder do Couchbase Lite para lidar com dados locais de forma eficiente. Cenários mais complexos, como consulta de dados, manipulação de replicação ou uso de pesquisa de texto completo (FTS), podem ser explorados por meio de nosso documentação.
Problemas atuais e aprimoramentos futuros
Estamos trabalhando ativamente para resolver os problemas conhecidos:
-
- Alterar ouvintes: No momento, estamos corrigindo problemas que tornarão os ouvintes de alterações funcionais na próxima atualização.
- Parâmetros de consulta de data no Android: Há pequenos problemas com a análise de datas no Android, que planejamos resolver em breve.
A versão beta pública (0.2.0) é atualmente baseada no Couchbase Lite 3.1.x, e faremos a atualização para o Couchbase Lite 3.2 em um futuro próximo.
Como você pode ajudar
Convidamos os desenvolvedores a experimentar a versão beta, criar aplicativos de amostra e fornecer feedback. Sua contribuição é inestimável para nos ajudar a identificar e corrigir problemas rapidamente. Você pode enviar problemas ou sugestões em nosso Página de problemas do GitHub.