IceScorpion
IceScorpion

Reputation: 23

grunt-html-build - process variable inside section?

i am trying to build a page with templates, where i am setting some parameters. Inside the main template this works perfect:

<!-- build:process -->
    <%= variable %>
<!-- /build -->

is correctly replaced by:

Value

To write the header only once, i have it in a separate file and include it as section, which works fine.

<!--  build:section header -->
<!-- /build -->

But the variables inside the header section are not processed and the partial template is included as it is:

<!-- build:process -->
    <%= variable %>
<!-- /build -->

What am i doing wrong here? Do i need to configure something so the sections are also processed?

Thx

Upvotes: 2

Views: 171

Answers (2)

SPA Tools
SPA Tools

Reputation: 1

You can process sections by using the recursive option: view doc.

Upvotes: -1

Teivaz
Teivaz

Reputation: 5675

It looks like a bug in the grunt-html-build module.

The only quick decent solution I can propose is to process header separately to temporary file:

var grunt = require('grunt')
grunt.loadNpmTasks('grunt-html-build')

grunt.initConfig({
    htmlbuild: {
        header: {
            src: 'head.html',
            dest: 'temp/head.html', // << write processed header to temp file
            options: {
                data: {
                    variable: "Value"
                }
            }
        },
        dist: {
            src: 'body.html',
            dest: 'build/',
            options: {
                sections: {
                    header: 'temp/head.html' // << read processed header
                }
            }
        }
    }
});

Upvotes: 0

Related Questions