在哪里放置小部件的脚本引用(部分页面)

Posted

技术标签:

【中文标题】在哪里放置小部件的脚本引用(部分页面)【英文标题】:Where to put script references for widgets (partial page) 【发布时间】:2016-12-16 04:52:49 【问题描述】:

在 MVC5 asp.net 网站上工作。

我有一个“仪表板”页面,允许用户在页面上放置预定义的“小部件”。这些小部件只是 MVC 5 部分页面 (Razor)。我真的希望每个小部件都是“独立的”,因此所有引用、脚本等都在小部件的 cshtml 文件中。但是,主“仪表板”页面还需要对 jQuery、bootstrap 等的某些引用...

当然,这样做,我可能会遇到冲突、重复引用(一个来自主页,一个来自小部件)等等......

问题:这种情况的首选方法是什么?像 jQuery 和 bootstrap 这样的引用应该只在主“仪表板”页面上吗?小部件本身中的 javascript 或 jQuery 代码呢?这应该保留在小部件中吗?如果是这样,我会遇到没有定义 jQuery 的问题(因为它在父页面中)等等...?

对此有何想法将不胜感激?

谢谢!

**** 更新 ****

进一步澄清:如果我将脚本、引用等(特定于小部件)放在小部件的底部,那么当部分页面呈现在主页上时,脚本等不会呈现在主页的底部。由于事物呈现的顺序,这会导致我的代码表现得滑稽。这是我问这个问题的原因之一。希望这是有道理的。谢谢。

【问题讨论】:

【参考方案1】:

将应用程序全局的脚本代码和引用放在最外面的页面中,它们在任何地方都可以使用,并且不特定于小部件。

我会做的是,我会将我的所有脚本引用捆绑在一个地方并将该捆绑链接添加到仪表板页面,这使您的代码更清晰,您的页面将具有更少的外部引用,从而获得更好的客户端性能。

【讨论】:

谢谢@Bsayej。但是,例如,假设我有一个小部件,它是一个向下钻取的条形图、大量的 jQuery 代码等......是否应该相关的 jQuery、css 等......进入小部件本身,减去全局例如,jQuery/bootstrap 引用?我在某处读到,在部分页面中没有任何脚本/引用会更干净。最佳做法是什么?

以上是关于在哪里放置小部件的脚本引用(部分页面)的主要内容,如果未能解决你的问题,请参考以下文章

安卓智能手机之小部件怎么用?

这8款Android桌面小部件,能让你的Android好用很多倍

内部小部件树不能大于页面:一个小部件不能在一个页面上部分绘制,而其余部分在另一页面上:它是不可分割的

html页面作为一个小部件

如何将小部件放置在具有成比例大小和位置的小部件上方

在 xml 布局中添加小部件