当我包含模块时,require.js中的"!"是什么意思?什么是语法?我什么包括动态样式表在我的项目,我发现https://github.com/martinsb/require-css插件它工作得很好。
require(['css!css/sample.css'], function() {
alert('Stylesheet has been loaded');
});
为什么("css ! css/sample.css")包括 css.js 和 css/sample.css ?
编辑:I know alternative:
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文件,知道如何下载和解析受尊重的文件。
告诉需求,任何特定的文件需要由单独的插件处理,而不是默认的加载器。它的插件在插件名称和文件路径之间附加!
。