select ng-model ng-options 不起作用
select ng-model ng-options doesn't work
你能帮我解决我的问题吗?我真的不明白为什么它不起作用。
我想从数据库
的级别[]动态生成select
<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
词典-item.component.html:
<div class="pull-right level">
<select id="levelSelect" ng-model="levelModel" ng-options="level as level.level for level in levels" (click)="stopPropagation($event)">
</select>
</div>
词典-item.component.ts:
@Component({
selector: 'app-dictionary-item',
templateUrl: './dictionary-item.component.html',
styleUrls: ['./dictionary-item.component.css']
})
export class DictionaryItemComponent implements OnInit {
@Input() dictionaryItem: DictionaryItem;
levels: Level[] = [];
constructor(private dictionaryService: DictionaryService) { }
ngOnInit() {
this.levels = this.dictionaryService.getLevels();
console.log(this.levels);
/*
from Chrome console:
(5) [{…}, {…}, {…}, {…}, {…}]
0
:
{id: 1, level: 1}
1
:
{id: 2, level: 2}
2
:
{id: 3, level: 3}
3
:
{id: 4, level: 4}
4
:
{id: 5, level: 5}
length
:
5
__proto__
:
Array(0)
*/
}
}
this.dictionaryService.getLevels() returns 等级[]:
其中级别:
export class Level {
public id: number;
public level: number;
constructor(id: number, level: number) { }
}
为什么 Angular 在页面上生成空白 select 列表?没有任何值?
我什至尝试在组件中设置:
ngOnInit() {
this.levels = [new Level(1,1), new Level(2,2), new Level(3,3)];
}
但网站上没有任何生成。没有。
提前致谢!
马特乌斯
它不起作用,因为您没有使用 angularJS。
<select [(ngModel)]="levelModel" (click)="stopPropagation($event)">
<option *ngFor="let level of levels" [value]="level">{{ level }}</option>
</select>
你能帮我解决我的问题吗?我真的不明白为什么它不起作用。
我想从数据库
的级别[]动态生成select<select>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
词典-item.component.html:
<div class="pull-right level">
<select id="levelSelect" ng-model="levelModel" ng-options="level as level.level for level in levels" (click)="stopPropagation($event)">
</select>
</div>
词典-item.component.ts:
@Component({
selector: 'app-dictionary-item',
templateUrl: './dictionary-item.component.html',
styleUrls: ['./dictionary-item.component.css']
})
export class DictionaryItemComponent implements OnInit {
@Input() dictionaryItem: DictionaryItem;
levels: Level[] = [];
constructor(private dictionaryService: DictionaryService) { }
ngOnInit() {
this.levels = this.dictionaryService.getLevels();
console.log(this.levels);
/*
from Chrome console:
(5) [{…}, {…}, {…}, {…}, {…}]
0
:
{id: 1, level: 1}
1
:
{id: 2, level: 2}
2
:
{id: 3, level: 3}
3
:
{id: 4, level: 4}
4
:
{id: 5, level: 5}
length
:
5
__proto__
:
Array(0)
*/
}
}
this.dictionaryService.getLevels() returns 等级[]:
其中级别:
export class Level {
public id: number;
public level: number;
constructor(id: number, level: number) { }
}
为什么 Angular 在页面上生成空白 select 列表?没有任何值?
我什至尝试在组件中设置:
ngOnInit() {
this.levels = [new Level(1,1), new Level(2,2), new Level(3,3)];
}
但网站上没有任何生成。没有。
提前致谢! 马特乌斯
它不起作用,因为您没有使用 angularJS。
<select [(ngModel)]="levelModel" (click)="stopPropagation($event)">
<option *ngFor="let level of levels" [value]="level">{{ level }}</option>
</select>