我想将 jQuery UI 组件集成到 Blazor 客户端应用程序中。 Spinner 组件在 jQuery UI 中看起来更好。这可能吗?如何整合?
我希望将此 Spinner 组件集成到我的 Blazor 客户端应用程序中吗?
最佳答案
这是为 JQuery 或 JS 控件创建包装器的方法:
1.- 在函数中包含 JS 行为:
<script>
var spinner = null;
window.myWrapperKSUIfunctions = {
initialize: function () {
spinner = $( "#spinner" ).spinner();
$( "button" ).button();
},
dissableclick: function () {
if ( spinner.spinner( "option", "disabled" ) ) {
spinner.spinner( "enable" );
} else {
spinner.spinner( "disable" );
}
},
destroyclick: function () {
if ( spinner.spinner( "instance" ) ) {
spinner.spinner( "destroy" );
} else {
spinner.spinner();
}
},
getvalueclick: function () {
alert( spinner.spinner( "value" ) );
},
setvalueclick: function () {
spinner.spinner( "value", 5 );
},
};
</script>
不要忘记包含其他 JS/JQuery 库。
2.- 从 blazor 初始化控件:
@code {
protected async override Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
await JsRuntime.InvokeAsync<object>("myWrapperKSUIfunctions.initialize");
}
}
3.- 从 blazor 调用 JS 函数:
<button id="disable"
@onclick="@( ()=>JustCall("dissableclick") )" >
Toggle disable/enable
</button>
@code {
...
protected async Task JustCall(string f)
{
wait JsRuntime.InvokeAsync<object>($"myWrapperKSUIfunctions.{f}");
}
Check it out at blazorfiddle .
另外,看看 MatBlazor控制。
关于jquery-ui - 是否可以将 jQuery UI 组件集成到 Blazor 应用程序中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58450009/