Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pass thru twigOptions to compiler regardless of code path #61

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

gavrielrh
Copy link

Hi 🙂

Thank you for maintaining this library!

When investigating the cause of some twig templates not behaving the way I'd expect, I found that options I had set in my webpack.config.js weren't actually applying when the twig-loader was creating js output.

Specifically, I was expecting:

rules: [
            {
                test: /\.twig$/,
                loader: "twig-loader",
                options: {
                    twigOptions {
                        autoescape: true
                    }
                },
            }
        ]

to pass through the autoescape: true option to twigjs, such that the resulting js output would resemble the following

var twig = ...,
      tokens = [...],
      template = twig({"autoescape":true,...});
      ...

but instead the autoescape option was completely missing from the generated template.

This PR should remedy it, but I'd be more than happy to know if I'm missing something / if there's a better approach.

When options are provided to this loader via webpack config, they should always pass thru to the compiler regardless of which codepath is taken.
This unfortunately isn't the case for all webpack configs, resulting in critical options like autoescape: true not being seen when compiling .twig files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant