使用 AngularDart 的应用程序布局不会在抽屉上显示项目
App Layout with AngularDart does not show Item on Drawer
我正在尝试重现以下应用程序布局演示 (app_layout_demo) 示例:
https://github.com/dart-lang/angular_components_example/tree/master/lib/src/app_layout_demo
抽屉里应该有这些物品:
<material-drawer persistent #drawer="drawer" [attr.end]="end ? '' : null">
<material-list *deferredContent>
<div group class="mat-drawer-spacer"></div>
<div group>
<material-list-item>
<material-icon icon="inbox"></material-icon>Inbox
</material-list-item>
<material-list-item>
<material-icon icon="star"></material-icon>Star
</material-list-item>
<material-list-item>
<material-icon icon="send"></material-icon>Sent Mail
</material-list-item>
<material-list-item>
<material-icon icon="drafts"></material-icon>Drafts
</material-list-item>
</div>
<div group>
<div label>Tags</div>
<material-list-item>
<material-icon icon="star"></material-icon>Favorites
</material-list-item>
</div>
</material-list>
</material-drawer>
但它不显示抽屉上的项目。参见:
浏览器控制台也报错:
EXCEPTION: Invalid argument(s): No provider found for DomService. html_dart2js.dart:3559
可能是什么问题?
错误信息的意思是缺少materialProviders
import 'package:angular_components/angular_components.dart';
@Component(
selector: 'my-app',
providers: [materialProviders],
它们只需要为整个应用程序提供一次,因此 AppComponent
是最好的地方。
请注意,如果您 运行 是 AngularDart 示例的较新版本(例如 5.0)并且看到相同的错误 (No provider found for DomService.
),您可能会发现您需要添加以下导入:
import 'package:angular_components/laminate/popup/module.dart';
以及您的根组件的以下内容(正如 Günter 提到的):
@Component(
selector: 'my-app',
providers: const [popupBindings]
根据:https://github.com/dart-lang/angular_components_example/blob/master/lib/app_component.dart#L64
更新:
但是,如果您确实想要导入 materialProviders
- 根据已接受的答案 - 只需添加以下导入:
import 'package:angular_components/angular_components.dart';
并将以下内容添加到您的根组件中:
@Component(
selector: 'my-app',
providers: const [materialProviders]
我正在尝试重现以下应用程序布局演示 (app_layout_demo) 示例:
https://github.com/dart-lang/angular_components_example/tree/master/lib/src/app_layout_demo
抽屉里应该有这些物品:
<material-drawer persistent #drawer="drawer" [attr.end]="end ? '' : null">
<material-list *deferredContent>
<div group class="mat-drawer-spacer"></div>
<div group>
<material-list-item>
<material-icon icon="inbox"></material-icon>Inbox
</material-list-item>
<material-list-item>
<material-icon icon="star"></material-icon>Star
</material-list-item>
<material-list-item>
<material-icon icon="send"></material-icon>Sent Mail
</material-list-item>
<material-list-item>
<material-icon icon="drafts"></material-icon>Drafts
</material-list-item>
</div>
<div group>
<div label>Tags</div>
<material-list-item>
<material-icon icon="star"></material-icon>Favorites
</material-list-item>
</div>
</material-list>
</material-drawer>
但它不显示抽屉上的项目。参见:
浏览器控制台也报错:
EXCEPTION: Invalid argument(s): No provider found for DomService. html_dart2js.dart:3559
可能是什么问题?
错误信息的意思是缺少materialProviders
import 'package:angular_components/angular_components.dart';
@Component(
selector: 'my-app',
providers: [materialProviders],
它们只需要为整个应用程序提供一次,因此 AppComponent
是最好的地方。
请注意,如果您 运行 是 AngularDart 示例的较新版本(例如 5.0)并且看到相同的错误 (No provider found for DomService.
),您可能会发现您需要添加以下导入:
import 'package:angular_components/laminate/popup/module.dart';
以及您的根组件的以下内容(正如 Günter 提到的):
@Component(
selector: 'my-app',
providers: const [popupBindings]
根据:https://github.com/dart-lang/angular_components_example/blob/master/lib/app_component.dart#L64
更新:
但是,如果您确实想要导入 materialProviders
- 根据已接受的答案 - 只需添加以下导入:
import 'package:angular_components/angular_components.dart';
并将以下内容添加到您的根组件中:
@Component(
selector: 'my-app',
providers: const [materialProviders]