Как установить назначение вывода исходной карты CSS при использовании grunt-contrib-less

Я использую grunt-contrib-less для компиляции меньшего количества файлов.

Я grunt локально установлен в корне папки проекта.

Файлы CSS находятся по адресу qa1/avinash/html5/phase1/css/ путь от корня папки проекта.

Так что это путь, который я указываю для cwd (текущий рабочий каталог), src а также dest параметры задачи без грунта. нет никаких проблем в составлении CSS и исходной карты.

Единственная проблема, с которой я сталкиваюсь, заключается в том, что исходная карта генерируется в той же папке gruntfile. но мой сгенерированный CSS находится на dest путь, который я указал. Поскольку css и исходная карта находятся в разных местах, я должен вручную отредактировать меньше ссылок на пути в исходной карте и перенести их в сгенерированный каталог css. или использовать sourceMapURL указать местоположение исходной карты ../../../../../style.css.map(В обратном направлении). Оба способа не удобны.

Так может кто-нибудь помочь мне, как указать исходный путь к выходной карте, как мы указываем для пути назначения для сгенерированного CSS что-то вроде

sourceMapDest: 'qa1/avinash/html5/phase1/css/'

-

В настоящее время используется Gruntfile.js:

module.exports = function(grunt) {
    grunt.initConfig({
        less: {
            options: {
                sourceMap:true,
                sourceMapFilename: "style.css.map",
                sourceMapURL: '../../../../../style.css.map'
            },
            src: {
                // no need for files, the config below should work
                expand: true,
                cwd:    "qa1/avinash/html5/phase1/css/",
                src:    "style.less",
                dest:   "qa1/avinash/html5/phase1/css/",
                ext:    ".css"
            }
        },
        watch: {
            js: {
                files: ['qa1/avinash/html5/phase1/css/'],
                tasks: ['default'],
            }
        }
    });
    grunt.loadNpmTasks('grunt-contrib-less');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.registerTask('default', ['less']);
};

1 ответ

Решение

sourceMapFilename опция также может включать в себя часть пути. Т.е. просто измените его на:

sourceMapFilename: "qa1/avinash/html5/phase1/css/style.css.map"
Другие вопросы по тегам