[FIX] portal: allow use of expression to describe portal target

Before this commit, the value of the `t-portal` directive was inserted
in the compiled template without being processed.
This commit is contained in:
Géry Debongnie
2022-05-03 15:15:53 +02:00
committed by Sam Degueldre
parent 0cd66c8518
commit 7137130c38
3 changed files with 41 additions and 1 deletions
+2 -1
View File
@@ -1268,7 +1268,8 @@ export class CodeGenerator {
this.helpers.add("capture");
this.define(ctxStr, `capture(ctx);`);
}
const blockString = `component(Portal, {target: ${ast.target},slots: {'default': {__render: ${name}, __ctx: ${ctxStr}}}}, key + \`${key}\`, node, ctx)`;
const target = compileExpr(ast.target);
const blockString = `component(Portal, {target: ${target},slots: {'default': {__render: ${name}, __ctx: ${ctxStr}}}}, key + \`${key}\`, node, ctx)`;
if (block) {
this.insertAnchor(block);
}