Я работаю над проектом шаблона Visual Studio 2017 для .net core 2 + шаблон Angular SPA.
У меня проблема с тем, что некоторые html-элементы появляются дважды, 1 - с применением css, а другой - нет.
при развертывании приложения это выглядит как на рисунке ниже.
Как видите, заполнитель «Выберите номер» и стрелка раскрывающегося списка появляются дважды.
Когда я нажимаю верхнюю стрелку, открывается 2 выпадающих меню с опциями.
Если я нажимаю стрелку вниз, открывается только раскрывающийся список вниз.
весь div должен быть окрашен в синий цвет, но только элементы "не на месте" - синие.
компонент является компонентом простого NG, но встречается с другими пакетами NPM (например, с пользовательским интерфейсом kendo).
Я предполагаю, что это может быть связано с порядком загрузки css-файлов и загрузкой NPM во время начальной загрузки, но я не могу найти место
index.cshtml:
@{
ViewData["Title"] = "Home Page";
}
<app>Loading...</app>
<script src="~/dist/vendor.js" asp-append-version="true"></script>
@section scripts {
<script src="~/dist/main-client.js" asp-append-version="true"></script>
}
_Layout.cshtml:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - GSM.WebMonitorTool</title>
<base href="~/" />
<link rel="stylesheet" href="~/dist/vendor.css" asp-append-version="true" />
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.10/css/all.css" integrity="sha384-+d0P83n9kaQMCwj8F4RJB66tzIwOKmrdb46+porD/OvrJ+37WqIM7UoBtwHO6Nlg" crossorigin="anonymous">
</head>
<body>
@RenderBody()
@RenderSection("scripts", required: false)
</body>
</html>
выбрать-number.component.html:
<div class="query-context-all">
<div class="dropdown">
<p-dropdown [options]="numbers" [(ngModel)]="chosenNumber" placeholder="Choose a number"></p-dropdown>
</div>
</div>
choose-number.component.ts:
import { Component } from '@angular/core';
import { SelectItem } from 'primeng/api';
@Component({
selector: 'context-input',
templateUrl: './context-input.component.html',
styleUrls: ['./context-input.component.css']
})
export class ContextInputComponent {
chosenNumber: string;
numbers: SelectItem[];
constructor() {
this.numbers = [
{ label: "1", value: "1" },
{ label: "2", value: "2" },
{ label: "3", value: "3" }];
}
}