主要需求的 RequireJS 糖

RequireJS sugar for main require

我的 javascript 文件以配置开头...

require.config({
    baseUrl: 'scripts',
    paths: {
        'code-mirror': 'codemirror/main',
        'esprima': 'https://cdn.rawgit.com/jquery/esprima/1.2/esprima',
        'jquery': 'http://code.jquery.com/jquery-1.11.2.min',
    },
})

...然后需要...

require( ['jquery', 'code-mirror', 'profile', 'feedback', 'browser-detect'], function($, CodeMirror, undefined, feedback, browser){

...而且有效!现在,我尝试改用 sugar 语法,就像这样...

require( function(require){

var $ = require('jquery'),
    CodeMirror = require('code-mirror'),
    undefined = require('profile'), // functions bound to window
    feedback = require('feedback'),
    browser = require('browser-detect');

...它不起作用!为什么?谢谢!

CommonJS 糖语法仅适用于 define,不适用于 require

如果您查看 RequireJS 的源代码,请查找名为 cjsRequireRegExp 的正则表达式。这是用于处理 CommonJS 语法的正则表达式。搜索它的出现:您会看到它仅用于 define.