如何在 AngularDart 中大写 acx-scorecard 值文本
How to capitalize acx-scorecard value text in AngularDart
我正在尝试使用 acx-scoreboard 组件,但无法自定义其字体大小和文本转换:大写;标签、价值和描述。
那么,任何人都可以帮助我如何做到这一点。
app_component.html
<button (trigger)="generateNames()">
Names
</button>
<ul>
<li *ngFor="let item of names">
<acx-scorecard
selectable
[selected]="true"
label="Selected scorecard"
value="{{item.first}}{{item.second}}"
description="Try clicking this">
</acx-scorecard>
</li>
</ul>
app_compoment.dart
import 'package:angular/angular.dart';
import 'package:angular_components/ angular_components.dart';
import 'package:english_words/english_words.
@Component(
selector: 'my-app',
templateUrl: 'app_component.html',
styleUrls: const ['app_component.css'],
directives: const [
CORE_DIRECTIVES,
materialDirectives,
ScoreboardComponent,
ScorecardComponent,
],
providers: const [materialProviders],
)
class AppComponent implements OnInit {
var names = <WordPair>[];
void generateNames() { names = generateWordPairs().take(2).toList(); }
@override void ngOnInit() { generateNames(); }
}
目前您的情况最好的解决方案是使用 uppercase
pipe.
<acx-scorecard
selectable
[selected]="true"
label="{{Selected scorecard | uppercase }}"
value="{{item.first | uppercase}}{{item.second | uppercase}}"
description="{{Try clicking this | uppercase}}">
我们在内部使用 SASS mixin 来自定义样式。
https://github.com/dart-lang/angular_components/blob/master/lib/src/components/scorecard/_mixins.scss
遗憾的是,该功能在开源版本中尚不可用。 SASS 文件供您参考,可以向您展示我们如何定位不同的元素。我现在正在努力允许在您的项目中导入和访问它们。
目前,解决方法是使用类似的 css 来定位记分卡的不同部分。
该技术唯一的缺点是,如果用于表示记分卡的 html 元素发生变化,它很容易中断。 mixin 避免了这种情况,因为它充当抽象并且有一个合同,如果记分卡发生变化,它应该适当地更新。
例如,您可以通过向包含记分卡的组件添加样式来更改标签的样式:
acx-scorecard ::ng-deep h3 { // targets the scorecard label
text-transform: capitalize;
}
::ng-deep 是 angular 现在支持的 /deep/ 的替代品。
我正在尝试使用 acx-scoreboard 组件,但无法自定义其字体大小和文本转换:大写;标签、价值和描述。 那么,任何人都可以帮助我如何做到这一点。
app_component.html
<button (trigger)="generateNames()">
Names
</button>
<ul>
<li *ngFor="let item of names">
<acx-scorecard
selectable
[selected]="true"
label="Selected scorecard"
value="{{item.first}}{{item.second}}"
description="Try clicking this">
</acx-scorecard>
</li>
</ul>
app_compoment.dart
import 'package:angular/angular.dart';
import 'package:angular_components/ angular_components.dart';
import 'package:english_words/english_words.
@Component(
selector: 'my-app',
templateUrl: 'app_component.html',
styleUrls: const ['app_component.css'],
directives: const [
CORE_DIRECTIVES,
materialDirectives,
ScoreboardComponent,
ScorecardComponent,
],
providers: const [materialProviders],
)
class AppComponent implements OnInit {
var names = <WordPair>[];
void generateNames() { names = generateWordPairs().take(2).toList(); }
@override void ngOnInit() { generateNames(); }
}
目前您的情况最好的解决方案是使用 uppercase
pipe.
<acx-scorecard
selectable
[selected]="true"
label="{{Selected scorecard | uppercase }}"
value="{{item.first | uppercase}}{{item.second | uppercase}}"
description="{{Try clicking this | uppercase}}">
我们在内部使用 SASS mixin 来自定义样式。 https://github.com/dart-lang/angular_components/blob/master/lib/src/components/scorecard/_mixins.scss
遗憾的是,该功能在开源版本中尚不可用。 SASS 文件供您参考,可以向您展示我们如何定位不同的元素。我现在正在努力允许在您的项目中导入和访问它们。
目前,解决方法是使用类似的 css 来定位记分卡的不同部分。
该技术唯一的缺点是,如果用于表示记分卡的 html 元素发生变化,它很容易中断。 mixin 避免了这种情况,因为它充当抽象并且有一个合同,如果记分卡发生变化,它应该适当地更新。
例如,您可以通过向包含记分卡的组件添加样式来更改标签的样式:
acx-scorecard ::ng-deep h3 { // targets the scorecard label
text-transform: capitalize;
}
::ng-deep 是 angular 现在支持的 /deep/ 的替代品。