I use NodeJS as engine to dust. I have problem with partials. I think that it is possible, what I want. Here is my index.dust :
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Project - {title}</title>
</head>
<body>
<div id="content">
{>"common/navbar-logout"/}
{+content /}
</div>
{+scripts /}
</body>
</html>
I would like to "import" common/navbar-logout file. In "common/navbar-logout" file, I have:
{>"index" /}
{! some HTML!}
{<scripts}
<script>
console.log("yyyy");
</script>
{/scripts}
When I run this script, I've got:
RangeError: Maximum call stack size exceeded at Object.dust.filters.h (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:296:16) at Object.dust.filter (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:290:34) at Chunk.reference (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:764:30) at body_0 (evalmachine.:1:371) at load (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:151:14) at Chunk.partial (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:911:14) at body_0 (evalmachine.:1:157) at load (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:151:14) at Chunk.partial (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:911:14) at body_0 (evalmachine.:1:661) at load (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:151:14) at Chunk.partial (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:911:14) at body_0 (evalmachine.:1:157) at load (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:151:14) at Chunk.partial (/APP_PATH/node_modules/dustjs-linkedin/lib/dust.js:911:14) at body_0 (evalmachine.:1:661)
When I remove {>"index" /} in "common/navbar-logout", application run, but I don't have script block from "common/navbar-logout" in "index" .
My goal is inject script-block from "common/navbar-logout" into "index" using partial "{>"common/navbar-logout"/}"
Dust partials can only provide blocks to templates that they include into themselves. Instead of
indexrequiringcommon/navbar-logout, you would have to havecommon/navbar-logoutincludeindexas a partial. It could then supply its inline partials to the blocks inindex. This doesn't lend itself well to your use case.To accomplish what you actually want to do, I've used some custom helpers in the past. Something like this: