-
dart中,通过使用part、part of、library来实现拆分库,这样,就可以将一个庞大的库拆分成各种小库,只要引用主库即可,用法如下:
-
假设有三个文件,两个子库calculator和logger,一个主库util
calculator.dart
// 和主库建立连接 part of util; int add(int i, int j) { return i + j; } int sub(int i, int j) { return i - j; } int random(int no) { return Random().nextInt(no); } int _info(int i, int j) { return i + j; }
logger.dart
// 和主库建立连接 part of util; class Logger { String _app_name; Logger(this._app_name); void error(error) { print('${_app_name} Error: ${error}'); } void warn(msg) { print('${_app_name} Warn:${msg}'); } void debug(msg) { print('${_app_name} debug:${msg}'); // 依赖库之间 私有方法可以调用,外部无法调用 _info(10, 20); } }
util.dart
// 库命名 library util; // 导入math,子库用到 import "dart:math"; // 和子库建立连接 part 'calculator.dart'; part 'logger.dart';
-
使用:
main.dart
import './util.dart'; void main() { // 使用logger库定义的类 Logger logger = Logger("Demo"); logger.debug("测试debug"); logger.warn("测试警告"); // 使用calculator库的方法 print(add(1, 2)); print(sub(4, 10)); }
文章评论