【发布时间】:2014-07-11 02:39:38
【问题描述】:
我正在尝试使用热毛巾模板实现单页应用程序。在我尝试合并 CSS HTML 模板之前,一切都很好。我正在使用 Durandal + RequireJS。
导航栏的 HTML 位于 nav.cshtml 中(我在 Durandal 中使用 cshtml)
如果之前粘贴在 index.html 中,则相同的 HTML
<div id="applicationHost">
效果很好。
如果使用 Durandal 导航视图将 Same 包含在 applicationHost 中,则无法正常工作。
我的 nav.cshtml 有一个根,没有空格或 cmets。
在导航栏上,与悬停相关的 javascript 似乎无法正常工作。
滑块也不会触发所需的javascript来启动它。
知道如何解决这个问题吗?
如果您复制 nav.cshtml 中的所有内容并将其粘贴到 applicationHost 上方,我已将我的代码上传到 http://we.tl/3NgPgGhoUI,则中殿悬停工作正常。但如果你用 durandal 注射它。它不会工作。 home.cshtml 中的 html 代码也是如此。那个html实际上只是一个滑块。使用 durandal 注射时它没有显示任何东西。但是,如果您复制 index.cshtml 中的 html,同样可以正常工作,如果您可以查看一下,那真的很棒。
我将所有cshtml都转换成html(除了index),我的shell.html如下所述。
<div>
<div>
<!-- ko compose: {view: 'nav'} -->
<!-- /ko-->
</div>
<div id="content">
<!--ko compose: {
model: router.activeItem,
compositionComplete: router.compositionComplete,
attached: router.attached,
cacheViews:true,
} -->
<!--/ko-->
</div>
<!-- ko compose: {view: 'footer'} -->
<!-- /ko-->
index.cshtml 是
<body>
<div id="applicationHost">
</div>
<script src="/TemplateFiles/js/jquery.js"></script>
@Scripts.Render("~/scripts/vendor")
<script src="~/Scripts/require.js" data-main="@Url.Content("~/App/main.js")"></script>
</body>
</html>
【问题讨论】:
标签: single-page-application durandal