Skip to Content
JAVASCRIPT網頁應用程式設計
book

JAVASCRIPT網頁應用程式設計

by Alex MacCaw
January 2013
Intermediate to advanced
332 pages
5h 23m
Chinese
GoTop Information, Inc.
Content preview from JAVASCRIPT網頁應用程式設計
JavaScriptMVC 函式庫
|
233
擴充模型
JavaScriptMVC 的模型是衍生自
$.Class
。因此,如果要建立模型類別,可以繼承
$.Model( 類別名稱 , [ 靜態屬性 ,] 原型屬性 )
$.Model('Paginate',{
staticProperty: 'foo'
},{
prototypeProperty: 'bar'
})
如果再加上一些處理,就能讓
Paginate
模型變得更好用。例如,如果想要限制 count
offsets 可以設定的值,可以透過設值函式(Setter,稍後馬上會介紹到)。
設值函式(Setter
設值函式是模型的原型函式,它的名稱格式是
set 屬性名稱
。只要一呼叫
model.
attr(NAME, val)
函式,就會同時觸發設值函式、success 回叫函式,以及 error 回叫函
式。一般來說,設值函式應該要回傳你為模型實體所設的新值,如果發生錯誤,會呼叫
error 回叫函式(同時傳入一組錯誤訊息)。至於 success 回叫函式,則是在以非同步方
式呼叫設值函式時,會需要用到的。
Paginate
模型就是利用設值函式,來防堵不合法的 counts offsets 設定值。舉例來說,
如果不允許設定負數,可以這麼寫:
$.Model('Paginate',{
setCount : function(newCount, success, error){
return newCount < 0 ? 0 : newCount;
}, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

初めてのJavaScript 第3版 ―ES2015以降の最新ウェブ開発

初めてのJavaScript 第3版 ―ES2015以降の最新ウェブ開発

Ethan Brown, 武舎 広幸, 武舎 るみ
PHP编程:第4版

PHP编程:第4版

Kevin Tatroe, Peter MacIntyre
Strange Code

Strange Code

Ronald T. Kneusel
Perfecting Your Thinking Skills

Perfecting Your Thinking Skills

MIT Sloan Management Review

Publisher Resources

ISBN: 9789862766811