Blazor
ClientSide Razor Page 가있는 프로젝트가 있습니다. 해당 페이지에 여러 줄 텍스트를 표시하고 싶습니다. 예를 들면 다음과 같습니다.
시리즈를 찾을 수 없음
오류 메시지
그러나 텍스트는 @bind
.
나는 \n
개행을 만들기 위해 노멀 을 사용해 보았습니다 . 그것은 명령이라고 생각했지만, 텍스트에 새 줄을 만드는 대신 "공백"을 넣었습니다.
나는 또한 <br />
본문에 쓰기 를 시도 했지만 그것은 단지 본문에 그것을 썼다.
내 면도기 페이지 :
<p>@resultString</p>
@code {
string resultString = "Series not found \nError message";
}
코드 스 니펫의 입력을 사용하면 다음과 같은 출력이 예상됩니다.
시리즈를 찾을 수 없음
오류 메시지
내가 생각할 수있는 유일한 방법은 Razor 템플릿을 사용하는 것입니다. \ r \ n, Envirnoment.Newline 및 다른 어떤 것도 컴파일러를 움직일 수 없습니다.
다음은 Razor 템플릿을 사용하는 작업 솔루션입니다.
<p>@resultString</p>
@code {
RenderFragment resultString = @<p>Series not found <br />Error message</p>;
}
업데이트 : 다음을 사용할 수도 있습니다.
MarkupString resultString = (MarkupString) $"Series not found <br />Error message";
업데이트 2 : 문서에서 :
Render raw HTML Blazor는 일반적으로 DOM 텍스트 노드를 사용하여 문자열을 렌더링합니다. 즉, 포함 할 수있는 모든 마크 업은 무시되고 리터럴 텍스트로 처리됩니다. 이 새로운 기능을 사용하면 HTML 또는 SVG로 구문 분석 된 다음 DOM에 삽입 될 특수 MarkupString 값을 렌더링 할 수 있습니다.
경고 : 신뢰할 수없는 소스에서 생성 된 원시 HTML을 렌더링하는 것은 주요 보안 위험입니다!
MarkupString 유형을 사용하여 정적 HTML 콘텐츠 블록을 추가합니다.
@((MarkupString)myMarkup)
@functions {
string myMarkup = "<p class='markup'>This is a <em>markup string</em>.</p>";
}
도움이 되었기를 바랍니다...
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다