Есть ли способ связать только определенные включения при использовании grunt-includes и browserify?

Итак, у меня есть файл, который заменяет html и включает.js.

Все включения.js сначала переносятся с помощью browserify / babelify / minifyify из файлов.es6, затем grunt includes заменяет любые включения в шаблонах с помощью grunt-includes.

browserify: {
        tmp: {
            files: [{
                expand: true,
                cwd: 'app',
                src: ['**/*.es6'],
                dest: '.tmp',
                ext: '.js'
            }],
            options: {
                browserifyOptions: { debug: false },
                watch: true,
                transform: [['babelify', {'presets': ['@babel/preset-env'] }]],
                plugin: [
                    ["minifyify", { map: false }]
                ]
            }
        }
    },

и вызов include:

includes: {
    files: {
        src: ['<%= config.tmp %>/*.html'], // Source files
        dest: '<%= config.tmp %>', // Destination directory
        flatten: true,
        cwd: '.',
        options: {
            includeRegexp: /\{\{\s*?include\s*?"(\S+)"\s*?\}\}/,
        },
    },
},

Шаблон включает в себя функцию готовности документа:

<script>
jQuery(document).ready(function(){

    // ----- Mobile Menu choice ----- //
    {{include "includes/js/mobile-menus/drawer/1.html"}}

    // ----- Section 1 ----- //
    {{include "includes/js/news-patterns/rotators/1.js"}}


    // ----- Section 2 ----- //
    {{include "includes/js/news-patterns/rotators/2.js"}}

    // ----- Section 3 ----- //


    // ----- Section 4 ----- //
    {{include "includes/js/events-patterns/events/3.html"}}

    // ----- Section 5 ----- //
    {{include "includes/js/news-patterns/tabs/3.html"}}

    // ----- Extras ----- //


})
</script>

Поэтому я хочу объединить все файлы.js в функцию готовности документа и вывести для них только один файл пакета include.js вместо каждого файла.js, имеющего свой собственный include...

Я не уверен, что смогу сделать это в браузере, потому что он транспилирует ВСЕ файлы es6 и объединяет их все, даже те, которые шаблон не использует. Поэтому я думаю, что мне нужно попытаться сделать это в разделе include, где он фактически собирает и заменяет то, что на самом деле используется шаблоном...

Я нахожусь в процессе преобразования всех файлов.html (которые представляют собой просто vanilla js) в документе, готовом в es6, поэтому я просто хотел бы объединить все шаблоны. Js включают только файлы. У меня есть другие.html, включенные в шаблон, которые на самом деле являются.html (кстати, я не создавал здесь соглашения об именах - это как раз то, что приземлилось мне на колени).

Любая помощь приветствуется! TIA!

0 ответов

Другие вопросы по тегам