gpt4 book ai didi

javascript - 将 Grunt 放入子目录中

转载 作者:行者123 更新时间:2023-12-02 23:49:18 24 4
gpt4 key购买 nike

是否可以将 Grunt 配置文件放在项目的子目录中?我想这样做是为了让事情更有条理。

例如

  • myproject/grunt/Gruntfile.js

  • myproject/grunt/package.json

  • myproject/grunt/node_modules/

我在此配置下运行来自 Gruntfile.js 的命令时遇到问题。 Grunt 可以处理对父目录的查找吗?或者也许我做错了

sass: {
dev: {
files: {
"../style.css": "../scss/style.scss"
}
}
}

当我运行这个 Grunt 时,它似乎只是耸耸肩,不明白我希望它在父目录中查找......

Source file "scss/style.scss" not found.

最佳答案

是的,这应该是可能的,但您可能想要使用 grunt.file.setBase method--base 命令行选项,使任务工作就像将 Gruntfile 放在项目的根目录中一样。否则,您将遇到各种任务问题,默认情况下,这些任务不会写入工作目录之外的路径。例如,force option关于 grunt-contrib-clean 插件。

下面是修改 sample Gruntfile from the Getting Started page 的示例使用此方法:

module.exports = function(grunt) {

// if you put the call to setBase here, then the package.json and
// loadNpmTasks paths will be wrong!!!

// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
build: {
src: 'src/<%= pkg.name %>.js',
dest: 'build/<%= pkg.name %>.min.js'
}
}
});

// Load the plugin that provides the "uglify" task.
grunt.loadNpmTasks('grunt-contrib-uglify');

// now that we've loaded the package.json and the node_modules we set the base path
// for the actual execution of the tasks
grunt.file.setBase('../')

// Default task(s).
grunt.registerTask('default', ['uglify']);

};

我不使用 SASS,因此无法评论您的任务配置是否有问题,但以上内容可作为入门示例的修改。

关于javascript - 将 Grunt 放入子目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18195095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com