mirror of
https://github.com/odoo/owl.git
synced 2025-10-06 19:59:41 +07:00
@@ -228,6 +228,10 @@ QWeb.addDirective({
|
|||||||
ctx.addLine("}");
|
ctx.addLine("}");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (node.hasAttribute("t-if") || node.hasAttribute("t-else") || node.hasAttribute("t-elif")) {
|
||||||
|
ctx.closeIf();
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -806,6 +806,22 @@ exports[`t-call (template calling scoped parameters 1`] = `
|
|||||||
}"
|
}"
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
exports[`t-call (template calling t-call with t-if 1`] = `
|
||||||
|
"function anonymous(context,extra
|
||||||
|
) {
|
||||||
|
var h = this.h;
|
||||||
|
let c1 = [], p1 = {key:1};
|
||||||
|
var vn1 = h('div', p1, c1);
|
||||||
|
if (context['flag']) {
|
||||||
|
let c2 = [], p2 = {key:2};
|
||||||
|
var vn2 = h('span', p2, c2);
|
||||||
|
c1.push(vn2);
|
||||||
|
c2.push({text: \`ok\`});
|
||||||
|
}
|
||||||
|
return vn1;
|
||||||
|
}"
|
||||||
|
`;
|
||||||
|
|
||||||
exports[`t-call (template calling with unused body 1`] = `
|
exports[`t-call (template calling with unused body 1`] = `
|
||||||
"function anonymous(context,extra
|
"function anonymous(context,extra
|
||||||
) {
|
) {
|
||||||
|
|||||||
@@ -501,6 +501,13 @@ describe("t-call (template calling", () => {
|
|||||||
expect(renderToString(qweb, "caller")).toBe(expected);
|
expect(renderToString(qweb, "caller")).toBe(expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("t-call with t-if", () => {
|
||||||
|
qweb.addTemplate("sub", "<span>ok</span>");
|
||||||
|
qweb.addTemplate("caller", '<div><t t-if="flag" t-call="sub"/></div>');
|
||||||
|
const expected = "<div><span>ok</span></div>";
|
||||||
|
expect(renderToString(qweb, "caller", {flag: true})).toBe(expected);
|
||||||
|
});
|
||||||
|
|
||||||
test("t-call not allowed on a non t node", () => {
|
test("t-call not allowed on a non t node", () => {
|
||||||
qweb.addTemplate("_basic-callee", "<t>ok</t>");
|
qweb.addTemplate("_basic-callee", "<t>ok</t>");
|
||||||
qweb.addTemplate("caller", '<div t-call="_basic-callee"/>');
|
qweb.addTemplate("caller", '<div t-call="_basic-callee"/>');
|
||||||
|
|||||||
Reference in New Issue
Block a user