mirror of
https://github.com/odoo/owl.git
synced 2025-10-06 19:59:41 +07:00
+1
-1
@@ -1091,7 +1091,7 @@ const widgetDirective: Directive = {
|
||||
|
||||
ctx.addLine(`extra.promises.push(def${defID});`);
|
||||
|
||||
if (node.getAttribute("t-if") || node.getAttribute("t-else")) {
|
||||
if (node.hasAttribute("t-if") || node.hasAttribute("t-else")) {
|
||||
ctx.closeIf();
|
||||
}
|
||||
|
||||
|
||||
@@ -1040,6 +1040,29 @@ describe("other directives with t-widget", () => {
|
||||
await widget.updateState({ flag: false });
|
||||
expect(normalize(fixture.innerHTML)).toBe("<div><span>hey</span></div>");
|
||||
});
|
||||
|
||||
test("t-else with empty string works with t-widget", async () => {
|
||||
class ParentWidget extends Widget {
|
||||
inlineTemplate = `
|
||||
<div>
|
||||
<div t-if="state.flag">somediv</div>
|
||||
<t t-else="" t-widget="child"/>
|
||||
</div>`;
|
||||
widgets = { child: Child };
|
||||
state = { flag: true };
|
||||
}
|
||||
class Child extends Widget {
|
||||
inlineTemplate = "<span>hey</span>";
|
||||
}
|
||||
|
||||
const widget = new ParentWidget(env);
|
||||
await widget.mount(fixture);
|
||||
|
||||
expect(normalize(fixture.innerHTML)).toBe("<div><div>somediv</div></div>");
|
||||
|
||||
await widget.updateState({ flag: false });
|
||||
expect(normalize(fixture.innerHTML)).toBe("<div><span>hey</span></div>");
|
||||
});
|
||||
});
|
||||
|
||||
describe("random stuff/miscellaneous", () => {
|
||||
|
||||
Reference in New Issue
Block a user