【发布时间】:2020-09-04 03:37:46
【问题描述】:
我正在使用 MathQuill 在我的页面上渲染乳胶,但这与渲染树冲突。
blazor 正在调用 Javascript:
RenderQuizInterface: function () {
MQ.StaticMath(document.getElementById("quizQuestion"))
for (var ele of document.getElementsByClassName("quiz-button-latex")) {
MQ.StaticMath(ele);
}
},
Blazor 页面:
@page "/quiz"
@inject IJSRuntime JsRuntime;
@using Boolean_Algebra.Components.Quiz;
<h1 class="text-center main-web-width" id="title">Quiz</h1>
<QuizInterface manager="manager"/>
@code {
public QuizManager manager;
protected override void OnInitialized()
{
AssignManager();
}
private void AssignManager() {
manager = new QuizManager();
manager.onAnswer += (s,e)=> {
AssignManager();
this.StateHasChanged();
};
}
protected override void OnAfterRender(bool firstRender)
{
JsRuntime.InvokeVoidAsync("JsFunc.RenderQuizInterface");
}
}
目前它呈现乳胶,但当我的 onAnswer 事件被调用时,它不会用新问题替换旧乳胶。 这在没有 JsRuntime 调用的情况下工作,但它会在页面上显示原始乳胶而不是格式化的乳胶。有没有不破坏渲染树的正确方法?
【问题讨论】:
标签: blazor