使用requirejs没有主文件也没有config()

时间:2014-08-13 17:03:17

标签: requirejs gruntjs handlebars.js grunt-contrib-uglify

我正在使用以下设置构建一个包含许多js(jquery)模块(文件)的应用程序;

  • 使用Grunt任务运行程序运行构建。
  • 我使用handlebars模板,然后从 * .hbs 文件生成html。
  • 在构建过程中,我uglify将所有js文件放入一个缩小的文件中。
  • 我在我的应用程序<script src="assets/js/app.min.js"></script>
  • 中调用缩小文件

现在,我想使用requirejs来组织我的代码并遵守AMD规范..

但是这个方法遇到了3个问题:

  1. 我需要为所有js提供1个缩小的文件;这使我的代码更难以解码&#34;因此要复制(因为它与其他依赖项混合; jquery,modernizer ..)并且还有助于避免额外的http请求,如果单独调用脚本..但是,requirejs needs a main file初始化应用程序并在主文件中调用其他所需的文件..我没有这样的配置。
  2. 我使用的许多依赖项都在凉亭包中(我不包含在发行版中);这使得无法使用suggested requirejs方法调用这些文件。
  3. 我使用jquery和一些不调用define()的第三方插件;为了使它们工作,我必须使用shim config,这又会引发问题#2!
  4. 那么我应该如何利用requirejs同时保持我的代码在模块中并且组织良好?

    很抱歉这个问题很长,感谢您阅读:)

    ps:随意更改问题的标题,因为我找不到更好的标题!

1 个答案:

答案 0 :(得分:0)

我最终选择AngularJS因为它符合我上面的设置,并允许我将我的应用分成可管理的小模块。

我也有可能使用jQuery的易用性(即使它不是角度社区中的最佳实践)和much more