1.系統(tǒng)庫的引用方式
import 'dart:io'; //文件操作
import 'dart:isolate';//創(chuàng)建線程
import 'dart:async'; //異步操作
import 'dart:math'; //用到數(shù)學(xué)的方法時
main(List<String> args) {
//此處我們用到了 min(a,b);函數(shù),
//當(dāng)我寫完這句代碼是,上面會自動幫我導(dǎo)入:dart:math 這個庫
print(min(2, 3));
}
2.自定義庫的引用方式
image.png
如圖,我在Prf_FrameWork.dart文件中定義了一個方法
int prf_sum(int a, int b) {
return a + b;
}
當(dāng)我使用prf_sum(int a, int b);
這個方法是,就要:import 'utils/Prf_FrameWork.dart'
;
3. 給自定義庫起別名
如果自定義庫中提供的方法名和當(dāng)前文件中的方法名重名了怎么辦?
我們使用的解決方案是為這個自定義庫起一個別名,實現(xiàn)代碼如下:
import 'utils/Prf_FrameWork.dart' as MyFramework;//為自定義庫起別名
main(List<String> args) {
final result = MyFramework.prf_sum(3, 4); //通過庫的別名調(diào)用庫方法
print(result);
}
prf_sum(int a, int b) {
print('a = $a, b = $b');
}
4.show & hide & 私有方法
默認(rèn)情況下,導(dǎo)入一個庫的時候,是導(dǎo)入這個庫中所有的公共內(nèi)容;
但是有些時候如果開發(fā)者指向?qū)肽骋粋€方法,那也是可以的:
Prf_FrameWork.dart
:
prf_sum(int a, int b) {
return a + b;
}
prf_test() {
print('test');
}
//方法名前面不帶 '_' ,是公開方法
int minNum(int a, int b) {
int min = a > b ? b : a;
return min;
}
//方法名前面帶 '_' ,是私有方法
int _minNum(int a, int b) {
int min = a > b ? b : a;
return min;
}
02-使用自定義庫.dart
:
import 'utils/Prf_FrameWork.dart' as MyFramework show prf_test;
//只導(dǎo)入庫中的prf_test方法
//同理還有一個hide用法 ,意義就是只隱藏這個方法;
//import 'utils/Prf_FrameWork.dart' as MyFramework hide prf_test;
main(List<String> args) {
final result = MyFramework.prf_sum(3, 4);
print(result);
//這個時候,就不能再使用prf_sum方法了
//只能使用prf_test方法
MyFramework.prf_test();
}
prf_sum(int a, int b) {
print('a = $a, b = $b');
}
5. 同時引用多個自定義庫
想要同時引入多個自定義庫的時候,類似于OC中同時導(dǎo)入多個頭文件,有兩種方式:
方式1:在當(dāng)前文件直接導(dǎo)入import
需要用到的庫
方式2:定義一個文件,在文件中導(dǎo)入需要的庫,然后在需要用到的地方直接導(dǎo)入該文件,類似于pch文件的效果.
實現(xiàn)方式:
- 1.新建一個
utils.dart
文件,這個文件名可以根據(jù)自己喜好定義 - 2.在
utils.dart
文件中,通過export '庫文件名'
的方式,把需要的庫放進(jìn)去 - 3.當(dāng)需要用到三方庫的時候,直接
import 'utils.dart'
.
6.導(dǎo)入第三方庫
stp1: 創(chuàng)建pubspec.yaml
Dart
要導(dǎo)入第三方庫需要建立一個pubspec.yaml
文件,這個就有點類似于iOS開發(fā)的時候,通過cocopod
導(dǎo)入第三方庫的時候,需要創(chuàng)建一個podfile
文件的意義差不多.
stp2 : 編輯pubspec.yaml
image.png
如圖所示,打開
pubspec.yaml
,在 pubspec.yaml
里編輯 name , description , dependencies
信息; 如果是使用vscode需要手動保存 command + s
, 然后在終端運行 : pub get
stp3 : 使用三方庫
image.png
7. 更多第三個庫
和iOS開發(fā)一樣,flutter開發(fā)也有專門提供庫的地方:
flutter第三方庫提供平臺