assert 方法的参数可以为任何返回布尔值的表达式或者方法。
如果返回的值为 true, 断言执行通过,执行结束。 如果返回值为 false,
断言执行失败,会抛出一个AssertionError异常 。
断言只在检查模式下运行有效,如果在生产模式运行,则断言不会执行。
assert(...)
代码示例:
import 'dart:convert';
import 'package:shared_preferences/shared_preferences.dart';
extension SharedPreferencesExtension on SharedPreferences {
Future<bool> setJson(String key, Map<String, dynamic> json) {
assert(json != null);
assert(key != null);
var value = jsonEncode(json);
return this.setString(key, value);
}
Map<String, dynamic> getJson(String key) {
assert(key != null);
var value = this.getString(key);
var json = jsonDecode(value);
return json;
}
}