我正在用角度构建一个Web应用程序。在我的应用程序中,有两个主要角色可以使用该系统。
1。老师
2。学生
两者具有不同的功能和不同的用户界面。
我应该将我的角度应用程序分成两个模块,例如teacherModule
和studentModule
吗?
答案 0 :(得分:2)
不必具有两个模块-您可以具有一个模块,并可以通过获得角色来访问功能和加载属性-因为如果您有多个模块,则需要花费一些时间,并且需要对通用代码使用重复的代码< / p>
在路由的同时,您可以获取用户的角色并基于该角色使用功能
尝试使用Resolver
进行检查-https://angular.io/guide/router#resolve-guard
谢谢-编码愉快!!
答案 1 :(得分:1)
最佳实践,是的,您应该使自己的应用更有组织性,因为它所谓的import 'dart:html';
import 'dart:async';
main() async {
// The desired implementation stated in the question:
var myStream = listenForSpaces();
myStream.listen(showInput);
}
Stream<String> listenForSpaces() {
// Use the StreamController class.
var controller = StreamController<String>();
var input = List<String>();
document.onKeyDown.listen((keyboardEvent) {
var key = keyboardEvent.key;
if (key == " ") {
// Add items to the controller's stream.
controller.add(input.join());
input.clear();
} else {
input.add(key.length > 1 ? "[$key]" : key);
}
});
// Listen to the controller's stream.
return controller.stream;
}
void showInput(String message) {
document.body.children.add(DivElement()..text = message);
}
还将您的应用划分为功能模块,使得使用feature modules
易于管理,从而也可以优化您的应用速度。