我有一个使用grunt和require.js的项目。我希望将所有javascript任务排除在Gruntfile之外,并使用r.js作为我的javascript。
当我执行r.js -o path/to/app.build.js时,系统就开始对整个web项目进行优化。
我只想让r.js查看我的javascript文件。Grunt可以处理sass & images.Here是我的目录结构的样子:
/src/
resources/
js/
vendor/
require.js
jquery.min.js
plugins/
pluginA.js
pluginB.js
modules/
moduleA.js
moduleB.js
moduleC.js
config.js
main.js当一切完成后,我只想优化这些文件并将它们移到我的最后一个文件中。在文档中,我找到了fileExclusionRegExp,但我不确定这就是我要找的。
编辑
谢谢你@克里格!为了在经过更多的测试之后清除一些东西,我发现r.js仍然保留在我的resources目录中。我正在寻找一种将r.js 排除在node_modules目录的之外的方法& scss目录中的。我有一个繁重的任务,将处理scss的“东西”。
我正在处理一个CodeIgniter项目,所以这里是我的系统的样子。
/trunk/
application/
logs/
src/ <-- all of my "source" files (un-compressed scss and js)
node_modules/
....
resources/
img/
imgA.jpg
imgB.jpg
js/
_build/
r.js
app.build.js
vendor/
require.js
jquery.min.js
plugins/
pluginA.js
pluginB.js
modules/
moduleA.js
moduleB.js
moduleC.js
config.js
application.js
scss/
application/
fileA.scss
fileB.scss
vendor/
bootstrap/
bootstrap.scss
...
site.scss
Gruntfile.js
package.json
system/
web/ <-- This is the site root directory
_dist/
resources/
css/
optimized.css
fonts/
vendor/
fontA.ttf
js/
optimized.js以下是我的app.build.js的样子。
({
'appDir': '../',
'baseUrl': 'resources/js',
'dir': '../../web/resources/js',
'mainConfigFile': '../resources/js/config.js',
'name': 'application'
})当我运行r.js -o app.build.js时,系统将遍历resources文件夹中的每个目录。
我不想要我的php文件,或者它抓取的任何普通文件.我只想让r.js只接触javascript文件。
下面是一个屏幕截图:

这是我做错的事,我知道.我只是没能找到/弄清楚是什么。
发布于 2015-06-14 03:00:04
好吧,就像其他事情一样-那是我在做的事。当我在工作的时候(现在看起来很傻),我确实发现了很多类似的帖子,所以我希望这能帮助到其他人。
TL;DR:
我将r.js移到javascript目录中。这样,它只会工作,它在那个目录中是神奇的。
以下是我更新的项目结构:
/trunk/
_src/
assets/
js/
_build/
app.build.js
r.js
modules/
plugins/
vendor/
application.js
app.config.js
scss/
....这是我的app.build.js文件:
({
'appDir': '../',
'baseUrl': './',
'dir': '../../../../web/_dist',
'mainConfigFile': '../config.js',
'modules': [
{
name: 'application'
}
],
'fileExclusionRegExp': /^(?:_build|(?:r|app.build)\.js)$/
})当构建完成后,我的_dist目录如下所示:
....
js/
modules/
plugins/
vendor/
application.js
build.txt
app.config.jshttps://stackoverflow.com/questions/30794652
复制相似问题