Visual Studio 中的语义 UI - 如何启动子文件夹中的 gulp 任务?
Semantic UI in Visual Studio - How to kick off gulp tasks in subfolders?
场景:
Visual Studio 2015 年有一个 MVC 6(我的意思是 MVC Core 1.0)项目。我使用 bower 来安装 Semantic UI,但我不认为这个问题是特定于 Semantic 的。
问题:
在项目的根目录下有一个 gulp 文件,我可以用它来做 gulp 的事情——但是语义在 /wwwroot/css/lib/semantic-ui
中有它自己的 gulp 文件,你可以使用它使用您自己的覆盖自定义主题。所以我需要能够 运行 在我进行更改时 gulp 文件的任务。
我尝试过的事情
我看到几个 gulp 函数可能会启动其他文件中的任务,但我不清楚哪个函数最好,或者我真的需要在在我调用语义 gulp 文件之前。 (我是 gulp 的新手)
我尝试使用 Task Runner Explorer 和 Mad's Web Compiler 手动编译语义文件 - 这在这一点上没问题 - 但我也是 LESS 的新手,虽然它似乎可以编译它会抛出一些我无法调试的关于缺少变量(似乎并没有丢失)的错误。这可能是一个单独的问题,但试图给出所有背景。
当我在网上阅读帖子时,他们大多假设您是从命令行 运行ning 或在项目根目录的 gulp 文件中执行所有操作。我更愿意将所有内容都保存在 Visual Studio 中,并仅参考 Semantic 包附带的 gulp 文件。当然,我是 gulp 和 LESS 的新手,所以也许这正是我认为我更喜欢的 - 我对其他方法持开放态度。
您可以将此 gulp 任务添加到根文件的 gulp.js 中:
function runTask(command, tasks) {
var spawn = require('child_process').spawnSync;
var path = '/www/root/css/lib/semantic-ui'; //or the relative path
process.chdir(path);
child = spawn(command, tasks);
process.chdir('../../../'); //bring it back to the directory from where you are running the gulp task
}
gulp.task('semantic', function(){
return runTask('gulp', ['build']); //add the gulp tasks here in the array
});
场景: Visual Studio 2015 年有一个 MVC 6(我的意思是 MVC Core 1.0)项目。我使用 bower 来安装 Semantic UI,但我不认为这个问题是特定于 Semantic 的。
问题:
在项目的根目录下有一个 gulp 文件,我可以用它来做 gulp 的事情——但是语义在 /wwwroot/css/lib/semantic-ui
中有它自己的 gulp 文件,你可以使用它使用您自己的覆盖自定义主题。所以我需要能够 运行 在我进行更改时 gulp 文件的任务。
我尝试过的事情
我看到几个 gulp 函数可能会启动其他文件中的任务,但我不清楚哪个函数最好,或者我真的需要在在我调用语义 gulp 文件之前。 (我是 gulp 的新手)
我尝试使用 Task Runner Explorer 和 Mad's Web Compiler 手动编译语义文件 - 这在这一点上没问题 - 但我也是 LESS 的新手,虽然它似乎可以编译它会抛出一些我无法调试的关于缺少变量(似乎并没有丢失)的错误。这可能是一个单独的问题,但试图给出所有背景。
当我在网上阅读帖子时,他们大多假设您是从命令行 运行ning 或在项目根目录的 gulp 文件中执行所有操作。我更愿意将所有内容都保存在 Visual Studio 中,并仅参考 Semantic 包附带的 gulp 文件。当然,我是 gulp 和 LESS 的新手,所以也许这正是我认为我更喜欢的 - 我对其他方法持开放态度。
您可以将此 gulp 任务添加到根文件的 gulp.js 中:
function runTask(command, tasks) {
var spawn = require('child_process').spawnSync;
var path = '/www/root/css/lib/semantic-ui'; //or the relative path
process.chdir(path);
child = spawn(command, tasks);
process.chdir('../../../'); //bring it back to the directory from where you are running the gulp task
}
gulp.task('semantic', function(){
return runTask('gulp', ['build']); //add the gulp tasks here in the array
});