import { live, LiveController } from "@camertron/live-component"; @live("TodoListComponent") export class TodoListComponent extends LiveController { add_item(label: string) { this.render((component) => { component.with("item", { label }) }); } }
import { live, LiveController } from "@camertron/live-component"; @live("TodoListComponent") export class TodoListComponent extends LiveController { add_item(label: string) { this.render((component) => { component.with("item", { label }) }); } }
import { live, LiveController } from "@camertron/live-component"; @live("TodoListComponent") export class TodoListComponent extends LiveController { remove_first_item() { this.render((component) => { delete component.slots["item"][0] }); } }
import { live, LiveController } from "@camertron/live-component"; @live("TodoListComponent") export class TodoListComponent extends LiveController { remove_first_item() { this.render((component) => { delete component.slots["item"][0] }); } }
import { live, LiveController } from "@camertron/live-component"; type TodoListComponentProps = { name: string; } type TodoListComponentSlots = { item: { label: string }; } @live("TodoListComponent") export class TodoListComponent extends LiveController<TodoListComponentProps, TodoListComponentSlots> { add_item(label: string) { this.render((component) => { component.with("item", { label }) }); } }
import { live, LiveController } from "@camertron/live-component"; type TodoListComponentProps = { name: string; } type TodoListComponentSlots = { item: { label: string }; } @live("TodoListComponent") export class TodoListComponent extends LiveController<TodoListComponentProps, TodoListComponentSlots> { add_item(label: string) { this.render((component) => { component.with("item", { label }) }); } }