spallinsonjs
v1.4.3
Published
A Web App Framework
Downloads
38
Maintainers
Keywords
Readme
SPAllinsonJS
v1.4.3
Description
MVC JS framework for building SPAs
Features
Routing
Easily manage the loading of content into divs
History
SPAllinsonJS tracks history allowing for functional prev/next browser buttons, and page reloading
Deeplinking
Deeplink into any part of your application (e.g. from an email to your download page)
Bookmarking
Allow users to bookmark the page (route) they are on
Services & Singletons
Create reusable Services and Singletons
Note
Pass messages (w/ optional data) around between Controllers within your application
Data Binding (One-Way)
Bind data from your Components' models to their Views
Data Rebinding
Manually rebind bound data (whenever you know the model has changed)
Repaint
Manually update a Component's View (whenever you know the model has changed)
Component
Inject an entire Component into a View
Repeat
Repeat a Component over an array of data
Eval
Perform eval() within your View
AJAX
Easily perform, handle and cancel HTTP Requests (with optional caching)
Locale
Specify language specific content using key/values
Testing
Unit test your app using SPAllinsonJS-v1.4.3--test.min.js
Splash Screen
Initial loading page presented to the user upon launch
Preloading
While the Splash Screen is being displayed, have SPAllinsonJS preload specific Components (i.e. their associated html, css, images and js)
Offline
Your app can work offline forever after just one initial Splash Screen load
Debug Console
Debugging made a lot easier
Garbage Collection
SPAllinsonJS is very memory oriented, keeping only what it needs in at any one time!
Browser Support
Vast!
Bundling
Support for HTML and JS bundles to help reduce server calls, and segment your app as you choose
Plugins
Alert
Display page level messages to the user
Lightbox
Load any content into this full page fading div with transparent background
Storage
Temporarily and Permanently store and retrieve data (key/values)
Revision History
v1.4.3
- Added view bundling support
v1.4.2
Major improvements to routing sequencing
Fade in/out speed now customizable via A.Settings.fadeSpeedMills
v1.4.1
- Apps now testable using
SPAllinsonJS-v1.4.1--test.min.js
v1.4.0
BREAKING: RouteRules condition now takes a function that return a bool
BREAKING: A.Ajax now has methods: request, get, post, put, delete and patch
BREAKING: A.Repaint, A.Repeat, A.Append, A.Rebind and A.Component all now take a component instance (i.e. self instead of self.me)
BREAKING: A.Note now takes a component instance and a function (i.e. self instead of self.me, and self.methodName instead of 'methodName')
BREAKING: A.MemoryManagement interface change
BREAKING: Components are automatically init'd with
me
andmodel
propertiesBREAKING: Component lifecycle methods are now
init
,viewDidAppear
anddealloc
Major performance enhancements
Component lifecycle methods are now optional
A.Settings.components['ComponentName'].view can now take a function that returns a string
Many A.Settings keys are now optional
Debug Console Ui and performance enhancements
v1.3.4
A.Ajax now errors out upon a 500
Repeat over empty array now clears container
Complex Go/Repaint cycles (MVVM) bugfixes
_A_Content reverted back to
position: absolute
which fixes'fade'
for'app'
v1.3.3
- Repaint bugfixes
v1.3.2
- Preload bugfix
v1.3.1
v1.3.0
BREAKING: A.loadScript() removed, use A.MemoryManagement.loadScript()
BREAKING: A.currentRoute removed, use A.Routing.currentRoute
Support for Query String
A.Router.currentQueryString
Revised core CSS to be less restrictive
Bugfix for displaying 0 using [B: ]
v1.2.5
Added A.Repaint allowing full view updating
Added A.Settings.fallbackRoute to handle "route not found"
[L: ] no longer wraps value in tag
A.Append bugfix (child Components are no longer destroyed)
A.loadScript() deprecated (use A.MemoryManagement.loadScript() instead)
A.currentRoute deprecated (to be replaced with A.Routing.currentRoute in v1.3.0)
Performance enhancements
v1.2.4
Memory Management and Script Management updated to allow for JS Bundles!
A.Settings.splash now optional
v1.2.3
A.Settings.routeRules added
Debug Console added to --debug release
Logging removed
Enhanced error handling
v1.2.2
- Added back [E: ] which was removed just before v1.0.0
v1.2.1
Bugfixes around null/dne data being passed into [B: ], [R: ] & [C: ]
Callbacks of Repeat, Append & Component fixed to be optional
v1.2.0
BREAKING: Moved and changed A.Settings.appDoesFadeIn to A.Settings.splash.doesFadeOut
Completion handling added to A.Go(), A.Repeat() & A.Append()
Debug build "SPAllinsonJS-v1.2.0--debug.min.js" (which enables logging) included in release
A.AJAX caching bugfixes
Added A.unloadScript(url) util
Enhanced error handling
Enhanced performance
Enhanced logging
v1.1.0
[C:] "Component" ... allows injecting of an entire Component into a container in a view
Locale now a SPAllinsonJS core feature
Enhancement to A.Ajax ... it now returns the requestObject allowing cancelling of requests
Enhancement to A.Ajax ... revisions to what success and error returns
Enhancement to A.Ajax ... revisions to what error codes return success and error
Fixed memory leak during dealloc'ing [C: ] & [R: ] created components
Fixed history issue related to [C: ] & [R: ] created components
SPAllinsonJS Documentation
Example Apps
Docs
All documentation can be found on the official site: www.spallinsonjs.com
Copyright
All content © Chris J. Allinson 1996 - Present. All rights reserved.