Recently, I noticed something amazing in Facebook console when I pressed “Ctrl+Shift+J” (Developer tools) as shown in below image.
Initially i gave though to use visualforce remoting however challenge was how to show progress bar and same challenge was with custom controller or extension also. So, i decided to create one simple Apex REST API to upload attachment.
In this article we will see how to use Camera and Audio recorder of mobile device in Visualforce and upload as chatter file. It may look that it is very tricky to access device camera and audio control in Visualforce however you may be right if there were no HTML5. Thanks to HTML5 for magic.
Dependency injection is a software design pattern that allows the removal of hard-coded dependencies and makes it possible to change them, whether at run-time or compile-time.
Before going to DI first we have to know about Service.
What is Service , factory or Provider in AngularJs?
They all are same, with different way of writing. This (Singleton design pattern) defines dependency between your controller and View through application.
We can Inject a service in Controller, which will watch over changes automatically and change its View as per required.
One of many features of HTML5 is capability to store data on client machine with the help of “Indexed Database API“. Using this technique web developers can add offline capabilities to their application. Currently almost every modern browser supports “IndexedDB”.
Lets start with Example on Indexed DB :
Very first step in IndexedDB is opening database. Below Code Sample will explain the process.
So what is so special about this framework, other than its developed by Google ?
Unlike Backbone and Ember, You don’t have to spend time on Event Handling (Bind, UnBind Events etc).
It Works on principal of Dirty Checking.
Automatically fires event if something gets changed.
What ? Dirty checking ? wouldn’t it be performance impact on my web application?
You are correct. But Google team has answer for this.
AngularJS performance mainly linked to your computer (Client’s Computer) performance.
Ergonomical point of view, an HTML page should not have more than 200 fields. More fields will just distract users.
Recently, I ran into requirement where I was getting JSON response and needed to render it on my Mobile application. I had two Options, Server side processing and Client side Templating. I studied and checked both way ; came to conclusion on using Client side Templating. There are many plugins and libraries available however there is one which stands different, easy to use and faster as compared to others which is “Underscore.js“.
Underscore.js library needs JQuery as prerequisite. You can find complete documentation here, Only remember following three points :