有没有办法将requirejs配置导入我的grunt配置文件?现在我必须保留两个相同的版本,一个在app/main.js
,一个在Gruntfile.js
:
module.exports = function(grunt) {
// can I import app/main.js requireConfig here?
var requireConfig = {
paths: {
jquery: 'lib/jquery'
// etc...
}
};
});
我的main.js看起来像这样:
requirejs.config({
paths: {
jquery: 'lib/jquery'
// etc...
}
});
define(['app'], function(app){
app.start();
});
答案 0 :(得分:1)
您可以使用支持不同类型模块系统的标准模块模式,如下所示。
你的requirejs配置文件就像这样
AMD-config.js
(function(factory) {
if (typeof define === 'function' && define.amd) {
// Register as an AMD module if available...
define('amd-config', [], factory());
} else if (typeof exports === 'object') {
// Next for Node.js, CommonJS, browserify...
module.exports = factory();
} else {
// setting browser global when none of the above are available
window.amdConfig = factory();
}
}
(function() {
var amdConfig = {
baseUrl: 'scripts',
paths: {
//Paths here
}
};
return amdConfig;
}));
在gruntfile中,你可以像任何其他模块一样要求。
var requireConfig = require('amd-config');
通常包含它,就像你在index.html中使用脚本标记在app.js之前一样 然后在app.js中使用它如下。
requirejs.config(window.amdConfig);
define(['app'], function(app){
app.start();
});
PS:有更简洁的方法将其包含在app.js.
比第二个更清晰,创建全局变量require并在requirejs脚本之前包含脚本。 requirejs检查是否存在名称需要包含对象的全局变量。如果它在那里,它被用作配置对象。所以你不必亲自调用requirejs.config。
您可以像要求其他文件一样要求文件。在这种情况下,它将被视为一个require模块,您将在require回调中收到该对象。像下面这样调用你的requirejs.config。
```
require(['amd-config'], function(amdConfig){
requirejs.config(amdConfig);
require(['app'], function(app){
app.start();
});
});
```
答案 1 :(得分:1)
如果您使用grunt构建项目,则可以使用更简单的方法。你可以简单地使用:
% Get the X/Y Coordinates of all points in the image
[xx, yy] = meshgrid(size(img, 2), size(img, 1));
% Create a mask with 1's inside the boundary
mask = inpolygon(xx, yy, boundary(:,1), boundary(:,2))
授予你需要使用:
fillna
答案 2 :(得分:0)
您可以尝试这样的事情:
function getRequireConfig(requireFilePath) {
var config;
var configFileContent,
_require;
_require = require;
require = {
data: {},
config : function (configParam) {
this.data = configParam;
},
get : function () {
return this.data;
}
};
configFileContent = readFileSync(requireFilePath);
eval(configFileContent);
config = require.get();
require = _require;
return config;
}
它正在做的是: