0

所以我的问题主要是关于RequireJS的用例。

我读了很多关于纯 javascript 驱动的网页。目前,我使用 AngularJS 扩展单个渲染视图(例如由 PHP 框架提供),这增加了很多价值。<script>可悲的是,对于其他“单页”上的每个标签,依赖性管理变得越来越难。当有一个main.js文件提供公共库(例如 jQuery 和 AngularJS 本身)时更是如此。

我认为拥有一个需要所有依赖项的主文件不符合 RequireJS 理念。

一个很好的例子是使用一些模块(由 AngularJS 的依赖项定义)的管理面板。

例子:

scripts/
    adminpanel/
        panel.app.js
        panel.filters.js
        panel.directives.js
    antoherModule/
    andAntoherModule/
    require.js

tl;博士

当您使用 AngularJS 扩展单个页面,而不是构建一个完全由 javascript 驱动的 Web 应用程序时,将 RequireJS 用于将在单个页面上使用的 AMD 加载模块是一种好习惯吗?最好的方法是如何做到这一点?

4

1 回答 1

0

SPA通常意味着页面不会刷新,所有额外的内容都是即时加载的。本质上,整个应用程序是一个页面。这并不意味着所有内容都在初始加载时加载(尽管如果它足够小,可能就是这种情况)。使用 RequireJS / AMD 架构对于这种事情来说确实很好。

当用户浏览整个站点时,会检索不同的部分/模板以及任何支持的 JavaScript。

最好的方法是使用define。定义脚本工作所需的所有要求。所需的所有脚本都将在函数运行之前加载,确保您拥有所需的一切。此外,您定义为需求的项目可以有自己的定义来指定他们需要的脚本......等等。

于 2013-08-27T02:03:39.170 回答