Files
WRNexusJS/examples/basic-app/app/pages/api-block-demo.wrn
T

39 lines
714 B
Plaintext

page ApiBlockDemo {
state nameFilter = "a"
state found = ""
state failed = ""
apis {
searchDirectory POST /api/directory {
request {
body {
name?: string
}
}
response {
return data.data.users
}
error {
return []
}
}
}
functions {
client async function search(): Promise<void> {
const users = await api.searchDirectory({ name: nameFilter })
found = users.map((user) => user.name).join(", ")
}
}
view {
<main>
<button @click="search()">Search</button>
<p class="found" data-text="found">{found}</p>
<p class="failed" data-text="failed">{failed}</p>
</main>
}
}