我应该使用 Modernizrjs +是的,诺佩斯 +需要js在同一页面吗?
我正在使用 RequireJs 来构建我的 JavaScript 代码。另外,我使用了大量的 CSS3,并且使用“Modernizr w/ YepNope”+ x 数量的 css3 polyfill。
我理解“Modernizr w/ YepNope”和 RequireJs 都是资源加载器。既然它们都是资源加载器,那么在同一个项目中使用它们是不是一个坏主意?
是一个坏主意吗?
- 使用Require.js
- Modernizr.js w/ YepNope.js
所以,基本上我问的是,在同一页面中
I'm using RequireJs for structuring my JavaScript code. Also, I'm using a lot of CSS3 and I use "Modernizr w/ YepNope" + x number of css3 polyfills.
I understand "Modernizr w/ YepNope" and RequireJs are both Resource Loaders. Since they are both resource loaders is it a bad idea to use both of them in the same project?
So, basically I'm asking, is it a bad idea to use:
- Require.js
- Modernizr.js w/ YepNope.js
In the same page?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只要您不通过 YepNope 加载 RequireJS 模块,就可以使用两者。否则,根据 RequireJS 文档,您可能会遇到此问题: http://requirejs.org/docs/errors .html#mismatch
由于您在 RequireJS 之外加载内容,即 API 填充,您的模块使用这些填充的唯一方法是在YepNope 的
complete()
回调。但恕我直言,它变得有点笨拙......As long as you don't load RequireJS modules via YepNope it is ok to use both. Otherwise you could encounter this issue according to the RequireJS doc : http://requirejs.org/docs/errors.html#mismatch
And since you load stuff outside RequireJS, i.e. an API polyfill, the only way your modules could use those polyfills would be to make the initial
require()
call within thecomplete()
callback of YepNope. But IMHO it gets a bit clunky...简介: Respond.js(对于 jQuery Mobile 非常有用)基于 css3 媒体查询,因此如果您只需要 polyfills,那么您可能不需要“需要”资源加载器。
我不能代表 YepNopejs,但由于 respond.js 已在 Modernizer 中列出,因此它似乎是多余的。
Modernizer(如果使用)应确定是否加载 respond.js。
Modernizer 将根据功能检测有条件地加载客户端脚本,包括 respond.js。
支持的脚本(目前不包括 YepNope)位于
https://github。 com/Modernizr/Modernizr/wiki/HTML5-跨浏览器-Polyfills
Summary: Respond.js, (which is great with jQuery Mobile), is based on css3 media queries, so if polyfills is all you need, you probably do not 'need' resource loaders.
I cannot speak for YepNopejs, but since respond.js is listed in Modernizer, it seems redundant.
Modernizer, if used, should determine whether or not respond.js is loaded.
Modernizer will conditionally load the scripts, including respond.js, client-side based on feature detects.
Supported scripts (which do not currently include YepNope) at
https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills