9

我正在使用 RequireJs 来构建我的 JavaScript 代码。另外,我使用了很多 CSS3,我使用“Modernizr w/YepNope”+ x 个 css3 polyfill。

我了解“Modernizr w/YepNope”和 RequireJs 都是资源加载器。由于它们都是资源加载器,在同一个项目中同时使用它们是不是一个坏主意?

所以,基本上我在问,使用它是不是一个坏主意:

  • 需要.js
  • Modernizr.js w/ YepNope.js

在同一个页面?

4

2 回答 2

4

只要您不通过 YepNope 加载 RequireJS 模块,就可以同时使用两者。否则,根据 RequireJS 文档,您可能会遇到此问题:http ://requirejs.org/docs/errors.html#mismatch

而且由于您在 RequireJS 之外加载东西,即 API polyfill,因此您的模块可以使用这些 polyfill 的唯一方法是在YepNope 的回调中进行初始require()调用。complete()但恕我直言,它有点笨拙......

于 2012-03-02T13:51:31.583 回答
3

总结:Respond.js,(jQuery Mobile 非常棒)是基于 css3 媒体查询的,所以如果你只需要 polyfills,你可能不需要“资源加载器”。

我不能代表 YepNopejs,但是由于 Modernizer 中列出了 respond.js,它似乎是多余的。

如果使用 Modernizer,应该确定是否加载了 respond.js。

Modernizer 将有条件地加载脚本,包括 response.js,基于功能检测的客户端。支持的脚本(目前不包括 YepNope)位于

https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills

于 2012-02-24T21:27:57.530 回答