From 9b84703c3683c7ad6f6dcb6312e9c2be3c9b1705 Mon Sep 17 00:00:00 2001 From: "Rico Sta. Cruz" Date: Wed, 30 Aug 2017 06:02:03 +0800 Subject: [PATCH] Update --- assets/2017/script.js | 12 +++++- js-model.md | 90 ++++++++++++++++++++++++++++--------------- 2 files changed, 68 insertions(+), 34 deletions(-) diff --git a/assets/2017/script.js b/assets/2017/script.js index 1d078870d..9db566f76 100644 --- a/assets/2017/script.js +++ b/assets/2017/script.js @@ -77,6 +77,14 @@ $(function () { }) }) +/* + * Helper for splitting to words + */ + +function splitwords (str) { + return str.toLowerCase().split(/[ \/\-_]/) +} + /* * Search */ @@ -87,7 +95,7 @@ const Search = { }, show (val) { - const keywords = val.split(/[ \-_]/) + const keywords = splitwords(val) const selectors = keywords .map(k => `[data-search-index~=${JSON.stringify(k)}]`) .join('') @@ -114,7 +122,7 @@ function permutate (data) { function permutateString (str) { let words = [] - let inputs = str.toLowerCase().split(/[ \-_]/) + let inputs = splitwords(str) inputs.forEach(word => { words = words.concat(permutateWord(word)) }) diff --git a/js-model.md b/js-model.md index 1b9c2561a..0b5a66ff6 100644 --- a/js-model.md +++ b/js-model.md @@ -1,60 +1,86 @@ --- title: js-model category: JavaScript libraries +layout: 2017/sheet --- - Project = Model "project", -> - @extend - findByTitle: (title) -> ... +### Example - @include - markAsDone: -> ... +```bash +Project = Model "project", -> + @extend + findByTitle: (title) -> ... - # ActiveRecord::Base.include_root_in_json = false - }); + @include + markAsDone: -> ... - project = Project.find(1) - project = Project.findByTitle("hello") + # ActiveRecord::Base.include_root_in_json = false +``` - project.markAsDone() +```bash +project = Project.find(1) +project = Project.findByTitle("hello") + +project.markAsDone() +``` ### Persistence - Project "hi", -> - @persistence Model.REST, "/projects" - @persistence Model.localStorage +```bash +Project "hi", -> + @persistence Model.REST, "/projects" + @persistence Model.localStorage +``` - Project.load -> - // loaded +```bash +Project.load -> + # loaded +``` ### Attrs - project = new Project(name: "Hello") +```bash +project = new Project(name: "Hello") - project.attr('name', "Hey") - project.attr('name') +project.attr('name', "Hey") +project.attr('name') - project.save() - project.destroy() +project.save() +project.destroy() +``` ### Collection - Food.add(egg) - Food.all() - Food.select (food) -> ... - Food.first() +```bash +Food.add(egg) +Food.all() +Food.select (food) -> ... +Food.first() +``` - Food.find(id) +```bash +Food.find(id) +``` ### Events - Project.bind "add", (obj) -> - Project.bind "remove", (obj) -> +```bash +# Classes +Project.bind "add", (obj) -> +Project.bind "remove", (obj) -> +``` - # Instances - project.bind "update", -> - project.bind "destroy", -> +```bash +# Instances +project.bind "update", -> +project.bind "destroy", -> +``` - project.trigger "turn_blue" +```bash +project.trigger "turn_blue" +``` -http://benpickles.github.io/js-model/ +## References +{: .-one-column} + +-