dart

[Flutter-前端视角]学习总结

学习flutter过程的一些个人简介,包括前三篇笔记,能容不多,仅是个人觉得需要注意的地方,后续还会继续更新,欢迎一起探讨~

Kntt

3 minute read

[Flutter-前端视角]dart 语言学习笔记(1) [Flutter-前端视角]dart 语言学习笔记(2) [Flutter-前端视角]dart 语言学习笔记(3) 对应的前端 HTML 标签 HTML 里面的标签在 flutter 里面叫做Widget,但是Widget并不是 html 里面的标签,因为 css 里面的一些属性也处理成相应的Widget了。 也就是说Widget包含标签和 CSS 属性 h1 ~ h6,p,span 文字相关标签 // Text类,可以看作是块级的文字显示 new Text( "Lorem ipsum", style: new TextStyle( fontSize: 24.0 fontWeight: FontWeight.w900, fontFamily: "Georgia", ), ) // 行内文字使用TextSpan类 new TextSpan( style: bold24Roboto, children: <TextSpan>[ new TextSpan(text: "Lorem "), new TextSpan( text: "ipsum", style: new TextStyle( fontWeight: FontWeight.w300, fontStyle: FontStyle.italic, fontSize: 48.0, ), ), ], ) 这两个类都只能处理文字样式,fontsize, fontweight 等。间距等属性要借助其他类去处理

[Flutter-前端视角]dart语言学习笔记(3)

学习flutter过程,个人对于dart的见解,以及学习过程的记录,欢迎指正~

Kntt

3 minute read

类和对象 Dart 是一门使用类和单继承的面向对象语言 所有的对象都是类的实例,并且所有的类都是Object的子类 定义 类的定义用class关键字 如果未显式定义构造函数,会默认一个空的构造函数 使用new关键字和构造函数来创建对象 2.构造函数 如果只是简单的参数传递,可以在构造函数的参数前加this关键字定义或者参数后加 : 再赋值 没有函数体的函数可以直接写;来结束函数声明 class Point { num x; num y; num z; // 第一个值传递给this.x,第二个值传递给this.y, 类似js中的解构赋值 Point(this.x, this.y, z) { this.z = z; } // 命名构造函数,格式为Class.name(var param) Point.fromList(var list): x = list[0], y = list[1], z=list[2]; //当然,上面句你也可以简写为:this相当于自身的构造函数 //Point.fromList(var list):this(list[0], list[1], list[2]); String toString() => 'x:$x y:$y z:$z'; } void main() { var p1 = new Point(1, 2, 3); var p2 = new Point.

[Flutter-前端视角]dart语言学习笔记(2)

学习flutter过程,个人对于dart的见解,以及学习过程的记录,欢迎指正~

Kntt

1 minute read

标记特殊需要记忆的点 取整~/操作符之前可能很少看到,代码如下 int a = 3; int b = 2; print(a~/b);//输出1 2.级联操作符,当你要对一个单一的对象进行一系列的操作的时候, 可以使用级联操作符 ..(相当于 js 的链式调用,隐式的返回原对象) class Person { String name; String country; void setCountry(String country){ this.country = country; } String toString() => 'Name:$name\nCountry:$country'; } void main() { Person p = new Person(); p ..name = 'Wang' ..setCountry('China'); print(p); } If语句的判断条件为==bool==值,用法和大多语言一样(只接受布尔值, 其他类型的值都译为false) if(i<0){ print('i < 0'); }else if(i ==0){ print('i = 0'); } else { print('i > 0'); } 循环 for forEach for-in for(int i = 0; i<3; i++) { print(i); } 如果迭代的对象是容器,那么可以使用forEach或者for-in