pageBuilder property
NavigatorPageBuilder?
pageBuilder
Implementation
NavigatorPageBuilder? get pageBuilder => _pageBuilder;
If there is a ModulePageBuilder in a module, there can be no submodules.
Implementation
set pageBuilder(NavigatorPageBuilder? builder) {
_pageBuilder = builder;
final urlComponents = <String>['/$key'];
var parentModule = parent;
while (parentModule != null && parentModule.key.isNotEmpty) {
urlComponents.insert(0, '/${parentModule.key}');
parentModule = parentModule.parent;
}
final url = (StringBuffer()..writeAll(urlComponents)).toString();
if (builder == null) {
anchor.allUrls.remove(url);
} else {
anchor.allUrls.add(url);
}
// 处理存在 home 的 url
if (key == kNavigatorPageDefaultUrl) {
final url = (StringBuffer()..writeAll(urlComponents..removeLast())).toString();
if (builder == null) {
anchor.allUrls.remove(url);
} else {
anchor.allUrls.add(url);
}
}
}