gpt4 book ai didi

javascript - Kendo UI MVVM : Reload widgets after router. 导航

转载 作者:太空宇宙 更新时间:2023-11-04 16:10:45 25 4
gpt4 key购买 nike

我想知道在导航到包含 KendoUI 小部件的脚本后,是否有一种方法可以在使用 MVVM 时重新加载 KendoUI 小部件。例如,假设我们有:

<div id="view_content"></div>

<script id="index" type="text/x-kendo-template">
<span id="info-notification"
data-role="notification">
</span>
</script>

并且我们设置了一个 KendoUI 路由器来访问“/index”。

var router = new kendo.Router();

router.route("/index", function() {
var index = new kendo.View('index');

index.render("#view_content");
});

router.start();
router.navigate("/index");

这会将脚本加载到 id="view_content"的 div 中。问题是,每次访问“/index”时都不会重新加载小部件。该小部件首先在 document.ready 上加载,但再次调用后它不会重新加载。有什么办法可以实现吗?

最佳答案

您可以使用 Kendo UI View show() 事件来重新加载小部件。

<body>
<div id="application"></div>

<script id="main" type="text/x-kendo-template">
<div id="content"></div>
</script>

<script id="index" type="text/x-kendo-template">
<!-- Widgets here -->
</script>

</body>


var layoutModel = kendo.observable({

});

var indexModel = kendo.observable({

});

var main = new kendo.Layout('main', {
model: layoutModel
});

var indexView = new kendo.View('index', {
model: indexModel,
show: function () {
// update widget here
}
});

var router = new kendo.Router({
init: function () {
main.render('#application');
}
});

var router = new kendo.Router();

router.route("/index", function() {
main.showIn('#content', indexView);
});

$(function () {
router.start();
});

关于javascript - Kendo UI MVVM : Reload widgets after router. 导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35218505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com