美文网首页
Flutter学习-Dart学习

Flutter学习-Dart学习

作者: 刚刚8888 | 来源:发表于2022-07-03 12:54 被阅读0次

1.var 赋值后类型确定
2.Object 是Dart所有对象的根基类,也就是说所有类型都是Object的子类(包括Function和Null)
3.dynamic的这个特性与Objective-C中的id作用很像.
4.Dart是一种真正的面向对象的语言,所以即使是函数也是对象,并且有一个类型Function。这意味着函数可以赋值给变量或作为参数传递给其他函数,这是函数式编程的典型特征。
5.包装一组函数参数,用[]标记为可选的位置参数,并放在参数列表的最后面
6.注意,不能同时使用可选的位置参数和可选的命名参数
7.Future与JavaScript中的Promise非常相似

// 延迟执行
Future.delayed(new Duration(seconds: 2),(){
   //return "hi world!";
   throw AssertionError("Error");
}).then((data){
   //执行成功会走到这里 
   print(data);
}).catchError((e){
   //执行失败会走到这里   
   print(e);
}).whenComplete((){
   //无论成功或失败都会走到这里
});

// 同步
Future.wait([
  // 2秒后返回结果  
  Future.delayed(new Duration(seconds: 2), () {
    return "hello";
  }),
  // 4秒后返回结果  
  Future.delayed(new Duration(seconds: 4), () {
    return " world";
  })
]).then((results){
  print(results[0]+results[1]);
}).catchError((e){
  print(e);
});

8.使用async/await消除callback hell

task() async {
   try{
    String id = await login("alice","******");
    String userInfo = await getUserInfo(id);
    await saveUserInfo(userInfo);
    //执行接下来的操作   
   } catch(e){
    //错误处理   
    print(e);   
   }  
}

9.Stream 常用于会多次读取数据的异步任务场景,如网络内容下载、文件读写等

Stream.fromFutures([
  // 1秒后返回结果
  Future.delayed(new Duration(seconds: 1), () {
    return "hello 1";
  }),
  // 抛出一个异常
  Future.delayed(new Duration(seconds: 2),(){
    throw AssertionError("Error");
  }),
  // 3秒后返回结果
  Future.delayed(new Duration(seconds: 3), () {
    return "hello 3";
  })
]).listen((data){
   print(data);
}, onError: (e){
   print(e.message);
},onDone: (){

});

相关文章

  • Dart基础入门

    Flutter应用是采用Dart语言来编写,在学习Flutter之前,我们有必要先学习一下Dart语言。Dart是...

  • flutter开发入门

    中文 学习网站 Flutter官网[https://flutter.cn/] Dart语言学习 Dart官网[ht...

  • Flutter基础入门(三)Dart快速入门

    前言 Dart是Flutter SDK指定的语言,因此要学习Flutter,Dart是必须掌握的。关于Dart可以...

  • 浅谈Dart语言

    前言 Dart是Flutter SDK指定的语言,因此要学习Flutter,Dart是必须掌握的。 2. Dart...

  • dart学习笔记

    为了学习flutter开发,今天开始学习dart这门语言。 1.dart官网地址:https://dart.dev...

  • Dart 基础

    为什么学习dart?谷歌推出了flutter,而flutter是基于dart语言的 dart是函数式编程语言 所有...

  • 浅论混合开发

    1. 学习成本和难度 1) Flutter 学习dart,学习flutter API,精通flex布局,和原生协作...

  • Flutter & Dart 基础

    以下主要是学习极客时间 Flutter 专栏相关学习记录。 Dart 基础 Online Dart iDE 核心特...

  • 带你创建第一个Dart程序

    0. 序言 从鄙人浅薄的视角来看,Flutter会越来越火。Flutter基于Dart,学习Dart语言势在必行。...

  • AndroidStudio不显示New Flutter Proj

    今天开始学习flutter,按照教程flutter和dart都安装好了,androidStudio里flutter...

网友评论

      本文标题:Flutter学习-Dart学习

      本文链接:https://www.haomeiwen.com/subject/cjjvmktx.html