尽管我开发了一个 asp.net web 表单项目,但越来越多的 css 和 javascript 文件需要加载到每个页面中。此外,还有一些条件语句,如
<!--[if lte IE 9]>
所以问题是:将所有 css 和 js 脚本加载捆绑在 asp.net 用户控件中,然后只将该用户控件放在页眉中而不是将所有这些行添加到每个页面/母版页,这是一个好习惯吗?
感谢您的解决方案。
尽管我开发了一个 asp.net web 表单项目,但越来越多的 css 和 javascript 文件需要加载到每个页面中。此外,还有一些条件语句,如
<!--[if lte IE 9]>
所以问题是:将所有 css 和 js 脚本加载捆绑在 asp.net 用户控件中,然后只将该用户控件放在页眉中而不是将所有这些行添加到每个页面/母版页,这是一个好习惯吗?
感谢您的解决方案。
这是用户控件的一种做法:将资源(js、css、图像)与控件捆绑在一起,以使其自包含。
但是,由此产生的主要问题是资源无法在客户端缓存,因此每次请求该页面时都会加载资源。此外,如果多个控件使用部分或全部资源,则它们会被多次加载,代码重用就会失败。
你必须仔细权衡你的选择。如果您的应用程序过于依赖用户控件,那么您必须忍受它。您可以识别公共资源并将它们分开并在需要的页面中加载它们。
我建议识别公共资源并将它们(使用工具或手动)捆绑到一个文件中并加载到单个页面(或适当的母版页)中并进行 js 缩小。通常 css 放在头部,js 放在页面末尾。
将所有内容捆绑在单个用户控件中会带来可维护性、版本控制以及当然缓存的问题,如上所述。
具体到 css,我建议你使用 ASP.Net 主题(样式表主题)。这样,所有样式都保留在一个地方,并提供简单的自定义选项。