Uso de la API para sincronizar la BD

Lección 42 del Curso Flutter y Laravel Tienda Delivery

Para llenar datos desde un servidor web en al Aplicativo debe existir una arquitectura llamada API la cual permite el intercambio de datos aplicaciones

Uso de la API para sincronizar la BD

COMPRA ESTE CURSO

Y accede a todos los recursos y videos, explicación, scripts y descarga del código fuente disponible con la compra del curso

COMPRAR

Para llenar datos desde un servidor web en al Aplicativo debe existir una arquitectura llamada API la cual permite el intercambio de datos aplicaciones

import 'dart:convert';

import 'package:arequipalocal/api/Api.dart';
import 'package:arequipalocal/basededatos/Bd.dart';
import 'package:arequipalocal/modelo/Categoria.dart';
import 'package:arequipalocal/modelo/Producto.dart';
import 'package:arequipalocal/modelo/Subcategoria.dart';
import 'package:arequipalocal/pantalla/PantallaCarrito.dart';
import 'package:arequipalocal/pantalla/PantallaInicio.dart';
import 'package:arequipalocal/pantalla/PantallaProductos.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'package:shared_preferences/shared_preferences.dart';
import 'package:provider/provider.dart';
class PantallaCategoria extends StatefulWidget {
  @override
  _PantallaCategoriaState createState() => _PantallaCategoriaState();
}

var BD = DBHelper();
class _PantallaCategoriaState extends State<PantallaCategoria> {
  final GlobalKey<ScaffoldState> _globalKey = new GlobalKey<ScaffoldState>();
  Future<List<Categoria>> _getData() async{
    var respuesta = await http.get(
      ...
    );

    setState(() {
      var data = json.decode(respuesta.body);
      //print(data.toString());
      if(data!= null){
        // llenar categorias
       ...
        // llenar subcategorias
        var _subcategorias = data['subcategorias'];
        BD.deleteTable("subcategoria", "1");
        for(int i=0; i<_subcategorias.length;i++){
          var registro = Subcategoria(
              _subcategorias[i]['id'],
              _subcategorias[i]['nombre'],
              _subcategorias[i]['urlfoto'],
              _subcategorias[i]['categorias_id'],
          );
          BD.saveSubcategoria(registro);
        }

        

      }
      else{
        print("Error");
      }
    });

  }

  @override
  void initState() {
    // TODO: implement initState
    ...
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
      return Scaffold()
   
  }

  
}

COMPRA ESTE CURSO

Y accede a todos los recursos y videos, explicación, scripts y descarga del código fuente disponible con la compra del curso

COMPRAR

27 visitas

Lecciones del curso

27. Autenticación con JWT
28. Enviar Productos en JSON
29. Recibir pedidos en Laravel
VER MÁS CURSOS
Logo Codea App

© Todos los derechos reservados CODEA APP | Cursos de programación avanzados con proyectos reales | 2020