UNPKG

create-mettle-app

Version:

A set of fast building mettle.js project command line tool.

40 lines (34 loc) 855 B
import { signal, produce, batch, computed } from 'mettle'; import { linkTo } from 'mettle-router'; export default function Home() { const msg = signal('hello'); const arr = signal([1, 2]); const count = signal(3); function goAbout() { linkTo({ path: '/about', query: { id: 1, name: 'maomin', }, }); } function useChange() { batch(() => { msg.value = 'world'; count.value++; arr.value = produce(arr.value, (draft) => { draft.unshift(count.value); }); }); } const list = computed(() => arr.value.map((item) => <li key={item}>{item}</li>)); return ( <> <button onClick={goAbout}>goAbout</button> <h1>Home</h1> <p onClick={useChange}>{msg.value}</p> <ul>{list.value}</ul> </> ); }