Upgrade Skill Di ITBOX Jadi Lebih Hemat
Special Diskon 50%
Sampai 16 November 2026!
Hari
Jam
Menit
Detik
GARUDABOX

Forum Replies Created

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • in reply to: provider part 2 addNote error #50273
    [email protected]
    Participant

      terima kasih bantuannya dan penjelasannya coach

      in reply to: provider part 2 addNote error #50255
      [email protected]
      Participant

        add_or_detail_screen.dart
        import ‘package:flutter/material.dart’;
        import ‘package:notes/models/note.dart’;
        import ‘package:notes/provider/notes.dart’;
        import ‘package:provider/provider.dart’;

        class AddOrDetailScreen extends StatefulWidget {
        static String routeName;

        @override
        State<AddOrDetailScreen> createState() => _AddOrDetailScreenState();
        }

        class _AddOrDetailScreenState extends State<AddOrDetailScreen> {
        Note _note = Note(
        id: null,
        title: ”,
        note: ”,
        updatedAt: null,
        createdAt: null,
        );
        bool init = true;
        final _formKey = GlobalKey<FormState>();

        void submitNote() {
        _formKey.currentState.save();
        final now = DateTime.now();
        _note = _note.copyWith(
        updatedAt: now,
        createdAt: now,
        );
        final notesProvider = Provider.of<Notes>(context, listen: false);
        notesProvider.addnote(_note);
        Navigator.of(context).pop();
        // print(‘title : ‘ + _note.title);
        // print(_note.note);
        }

        @override
        void didChangeDependencies() {
        if (init) {
        String id = ModalRoute.of(context).settings.arguments as String;
        _note = Provider.of<Notes>(context).getNote(id);
        init = false;
        }

        super.didChangeDependencies();
        }

        @override
        Widget build(BuildContext context) {
        return Scaffold(
        appBar: AppBar(
        actions: [
        TextButton(
        onPressed: submitNote,
        child: Text(‘Simpan’),
        ),
        ],
        ),
        body: Container(
        padding: EdgeInsets.all(12),
        child: Form(
        key: _formKey,
        child: Column(
        children: [
        TextFormField(
        decoration: InputDecoration(
        hintText: ‘Judul’,
        border: InputBorder.none,
        ),
        onSaved: (value) {
        _note = _note.copyWith(title: value);
        },
        ),
        TextFormField(
        decoration: InputDecoration(
        hintText: ‘Tulis catatan disini’,
        border: InputBorder.none,
        ),
        onSaved: (value) {
        _note = _note.copyWith(note: value);
        },
        ),
        ],
        ),
        ),
        ),
        );
        }
        }

        in reply to: provider part 2 addNote error #50254
        [email protected]
        Participant

          iya error pas tekan tombol +
          home_screen.dart
          import ‘package:flutter/material.dart’;
          import ‘package:notes/screens/add_or_detail_screen.dart’;
          import ‘package:notes/widgets/notes_grid.dart’;

          class HomeScreen extends StatefulWidget {
          static const routeName = ‘/addOrDetailScreen’;
          @override
          State<HomeScreen> createState() => _HomeScreenState();
          }

          class _HomeScreenState extends State<HomeScreen> {
          @override
          Widget build(BuildContext context) {
          return Scaffold(
          appBar: AppBar(
          title: Text(‘Notes’),
          ),
          body: NotesGrid(),
          floatingActionButton: FloatingActionButton(
          onPressed: () {
          Navigator.of(context).pushNamed(AddOrDetailScreen.routeName);
          },
          child: Icon(Icons.add),
          ),
          );
          }
          }

        Viewing 3 posts - 1 through 3 (of 3 total)
        Shopping cart0
        There are no products in the cart!
        Continue shopping