我正在使用Visual Studio 2017 ASP.NET Angular Web应用程序模板使用ASP.NET Core 2.0开发Angular 2应用程序。
我有一个控制器,其方法获取我在我的应用程序中使用的所有立法(它们来自枚举):
[Route("api/[controller]")]
public class LawController : Controller
{
[HttpGet]
public IEnumerable<Models.LawPresentation> Get()
{
List<LawPresentation> laws = new List<LawPresentation>();
// Arrange
byte[] values = (byte[])Enum.GetValues(typeof(LawTypes));
foreach (byte value in values)
{
string enumName = Enum.GetName(typeof(LawTypes), value);
LawPresentation law = new LawPresentation()
{
Value = value,
Name = enumName
};
laws.Add(law);
}
return laws;
}
}
我这是在选择中显示所有这些值的组件:
<p *ngIf="!laws"><em>Loading...</em></p>
Legislaciones:
<select>
<option *ngFor="let l of laws" [ngValue]="l">{{l.name}}</option>
</select>
我不认为从控制器返回默认值(空白选项)是一个好主意,所以我想知道是否可以在html组件中添加一些内容来添加默认选项。
有没有办法将select的默认选项添加到html组件中?
答案 0 :(得分:1)
我会做这样的事情:
<p *ngIf="!laws"><em>Loading...</em></p>
Legislaciones:
<select>
<option></option>
<option *ngFor="let l of laws" [ngValue]="l">{{l.name}}</option>
</select>
答案 1 :(得分:0)
您可以添加默认选项,如下所示。 选定的属性将在初始时选择选项。 disable属性将限制用户选择的选项。 您可以根据要求删除它们
<p *ngIf="!laws"><em>Loading...</em></p>
Legislaciones:
<select>
<option value="" selected disabled>SELECT</option>
<option *ngFor="let l of laws" [ngValue]="l">{{l.name}}</option>
</select>