Adding new pages
So far, we are able to change and remove pages from our content management system. We ended the last chapter by seeding our local storage with a serialized array, so we could see it in action. Let's take a step back and make a way to create new pages through the interface.
First, we'll add an insert
method and update the constructor
method of Backend
:
constructor() { super(); var pages = LocalStore.get("pages", []); this.id = 1; this.pages = pages.map((page) => { page.id = this.id++; return page; }); } insert() { this.pages.push({ "id": this.id, "title": "New page " + this.id, "body": "" }); this.id++; LocalStore.set("pages", this.pages); this.emit("update", this.pages); }
The page id
values aren't really important to us outside the context of our React components. So, it's fine to regenerate...