of static method

TDThemeData of([
  1. BuildContext? context
])

获取主题数据,如果未传context则获取全局唯一的默认数据, 传了context,则获取最近的主题,取不到则会获取全局唯一默认数据

Implementation

static TDThemeData of([BuildContext? context]) {
  if (context != null) {
    // 如果传了context,则从其中获取最近主题
    try {
      var data = Theme.of(context).extensions[TDThemeData] as TDThemeData?;
      return data ?? TDThemeData.defaultData();
    } catch (e) {
      return TDThemeData.defaultData();
    }
  } else {
    // 如果context为null,则返回全局默认主题
    return TDThemeData.defaultData();
  }
}