Есть ли в Blazor эквивалент Html.Raw? - PullRequest
0 голосов
/ 30 мая 2018

У меня есть некоторый HTML, который хранится в строке.Как я могу отобразить это представление Blazor / Razor без автоматической кодировки HTML?

Ответы [ 2 ]

0 голосов
/ 30 июля 2018

Добавлена ​​функция рендеринга необработанного HTML в версии Blazor 0.5.0.Это пример того, как необработанный HTML может отображаться из string, содержащего содержимое HTML:

@((MarkupString)myMarkup)

@functions {
    string myMarkup = "<p class='markup'>This is a <em>markup string</em>.</p>";
}

Более подробную информацию можно найти в «Доступен экспериментальный выпуск Blazor 0.5.0» объявление.

0 голосов
/ 30 мая 2018

Не сейчас, но, вероятно, будет в следующей версии: Следуйте этому

Обходной путь (из этого выпуска):

cshtml

    

    @functions{
        [Parameter] string Content { get; set; }
        private ElementRef Span;

        protected override void OnAfterRender()
        {
            Microsoft.AspNetCore.Blazor.Browser.Interop.RegisteredFunction.Invoke("RawHtml", Span, Content);
        }
    }

index.html

        
            Blazor.registerFunction('RawHtml', function (element, value) {
                element.innerHTML = value;
                for (var i = element.childNodes.length - 1; i >= 0; i--) {
                    var childNode = element.childNodes[i];
                    element.parentNode.insertBefore(childNode, element);
                }
                element.parentNode.removeChild(element);
                return true;
            });
        

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...