2.2 前端 模块化管理工具requirejs - OhNaNaSun/angularBlog GitHub Wiki

http://www.requirejs.cn/

shim中配置 exports deps

参考: RequireJS 2.0 API之配置项 angular不支持amd模式调用。所以要暴露出angular这个全局变量。jquery这种兼容amd则不用 shim: 为那些没有使用 define() 声明依赖项、没有设置模块值、老的、传统的"浏览器全局"脚本配置依赖项和exports。例如 (RequireJS 2.1.0+):

requirejs.config({
    //By default load any module IDs from js/lib
    paths: {
        jquery: '../lib/jquery/jquery',
        angular: "../lib/angular/angular.min"
    },
    shim: {
        "angular": {
            exports: "angular",
        },
        "bootstrap": {
            deps: ["jquery"]
        }
    },
    urlArgs: 'v=1.0.0'
});

Define an I18N Bundle

一旦你的web app达到一定的规模和流行度,提供本地化的接口和信息是十分有用的,但实现一个扩展良好的本地化方案又是很繁贅的。RequireJS允许你先仅配置一个含有本地化信息的基本模块,而不需要将所有的本地化信息都预先创建起来。后面可以将这些本地化相关的变化以值对的形式慢慢加入到本地化文件中。 i18n.js插件提供i18n bundle支持。在模块或依赖使用了i18n!前缀的形式(详见下)时它会自动加载。下载该插件并将其放置于你app主JS文件的同目录下。 将一个文件放置于一个名叫“nls”的目录内来定义一个bundle——i18n插件当看到一个模块名字含有“nls”时会认为它是一个i18n bundle。名称中的“nls”标记告诉i18n插件本地化目录(它们应当是nls目录的直接子目录)的查找位置。