mc 0.0.1+7 copy "mc: ^0.0.1+7" to clipboard
mc: ^0.0.1+7 copied to clipboard

discontinued
outdated

State management & request package, Model,View,Controller,Request [MVCR].

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:mc/mc.dart';
import 'Views/CounterView.dart';
import 'Views/PhotoView.dart';
import 'Views/PostView.dart';
import 'Views/UserView.dart';

void main() {
  runApp(App());
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        routes: <String, WidgetBuilder>{
          '/counter': (BuildContext context) => new CounterExample(
                title: "Counter",
              ),
          '/user': (BuildContext context) => new UserExample(
                title: "10 Users",
              ),
          '/post': (BuildContext context) => new PostExample(
                title: "100 Posts",
              ),
          '/photo': (BuildContext context) => new PhotoExample(
                title: "5000 Photos",
              ),
        },
        title: 'MVCR Package',
        theme: ThemeData(
          primaryColor: Colors.brown,
          visualDensity: VisualDensity.adaptivePlatformDensity,
        ),
        home: MyApp());
  }
}

class MyApp extends StatelessWidget {
  MyApp() {
    String baseUrl = 'https://jsonplaceholder.typicode.com';
    McRequest request = McRequest(url: baseUrl);
    mc.add('rq', request);
  }
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Container(
          height: context.h * 0.5,
          child: Column(
            mainAxisAlignment: MainAxisAlignment.spaceEvenly,
            children: [
              Example("Counter View", "counter"),
              Example("10 Users", "user"),
              Example("100 Posts", "post"),
              Example("5000 Photos", "photo")
            ],
          ),
        ),
      ),
    );
  }
}

class Example extends StatelessWidget {
  final String title, to;
  Example(this.title, this.to);
  @override
  Widget build(BuildContext context) {
    return Container(
      width: context.w * 0.6,
      height: context.h * 0.1,
      child: TextButton(
          child: Text(
            title,
            style: TextStyle(fontWeight: FontWeight.bold, fontSize: 24.0),
          ),
          onPressed: () => Navigator.pushNamed(context, "/$to")),
    );
  }
}

extension SizeDevice on BuildContext {
  double get h => MediaQuery.of(this).size.height;
  double get w => MediaQuery.of(this).size.width;
}
20
likes
0
pub points
14%
popularity

Publisher

unverified uploader

State management & request package, Model,View,Controller,Request [MVCR].

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

flutter, http

More

Packages that depend on mc