什么意思 ”!”在 require.js

what's mean "!" in require.js

“!”是什么意思?在 require.js 中,当我包含模块时? 语法是什么? 我在我的项目中包含了动态样式表,我发现了 https://github.com/martinsb/require-css 插件 它工作正常。

require(['css!css/sample.css'], function() {
                        alert('Stylesheet has been loaded');
                    }); 

为什么 ['css!css/sample.css'] 包括 css.jscss/sample.css ?

编辑:

我知道替代方案:

    define(["controller", "RequireCSS","marionette"], 
 function (Controller, css,  Marionette) {

        css.load("default.css");

RequireCSS.js

define(function () {
    return {
        load: function (url) {
            var link = document.createElement("link");
            link.type = "text/css";
            link.rel = "stylesheet";
            link.href = url;
            document.getElementsByTagName("head")[0].appendChild(link);
        }
    }

});

!表示css插件将被用来解析sample.css。

语法为 <plugin-name>!<file-path>.

css.js 文件包含 css 插件代码。

css/sample.css 是文件,应使用该插件加载。

https://github.com/millermedeiros/requirejs-plugins

默认情况下,requirejs 仅支持下载和加载 javascript 文件。任何其他需要相应下载和解析的文件都是通过插件来完成的。这些插件是单独的 javascript 文件,它们知道如何下载和解析相关文件。

告诉 requirejs 任何特定文件都需要由单独的插件而不是默认加载程序处理。它的插件在插件名称和文件路径之间附加了 !