我剛剛開始使用hyperHTML。我正在構建一個需要路由的小應用程序,所以我將它與hyperhtml-app結合在一起。使用hyperHTML和hyperhtml-app中的鏈接導航
我想在視圖上設置點擊處理程序來處理點擊錨點元素,並讓他們與路由器導航。下面的工作,但似乎是一個令人費解的,我想我錯過了一個更好的方式來做到這一點。你能建議一個更好的方法嗎?
import hyper from 'hyperhtml';
import hyperApp from 'hyperhtml-app';
const app = hyperApp();
class Welcome extends hyper.Component {
render() {
return this.html`
<h1>Welcome</h1>
<a href="/settings" onclick=${this}>settings</a>
`;
}
onclick(e) {
if (e.target instanceof HTMLAnchorElement) {
e.preventDefault();
app.navigate(e.target.attributes.href.value);
}
}
}
class Settings extends hyper.Component {
render() {
return this.html`<h1>Settings</h1>`;
}
}
app.get('/',() => hyper(document.body)`${new Welcome()}`);
app.get('/settings',() => hyper(document.body)`${new Settings()}`);
app.navigate('/');
如果打下來,請留下評論,我會澄清問題,如果我可以。 – qubyte