{"id":354,"date":"2016-06-02T14:01:35","date_gmt":"2016-06-02T14:01:35","guid":{"rendered":"https:\/\/eshopsync.com\/?p=354"},"modified":"2025-10-14T10:24:36","modified_gmt":"2025-10-14T10:24:36","slug":"angular-js-visualforce-page","status":"publish","type":"post","link":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/","title":{"rendered":"Angular JS with Visualforce Page"},"content":{"rendered":"<p>In this post, I am going to share the information how you can use<strong> Angular JS with Visualforce <\/strong> to display records onto your Visualforce Page<\/p>\n<div class=\"panel panel-primary\">\n<div class=\"panel-heading\">\n<h3 class=\"panel-title\">Angular JS<\/h3>\n<\/div>\n<\/div>\n<div class=\"panel-body\">\n<p>Angular is a Google-produced MVC framework where you can generate web applications and maintain them. This is Javascript based component framework which is open source. Here Visualforce and Salesforce1 can be used for making Salesforce compatible with mobile and also for connecting people to the Salesforce data. AngularJS allows the easy development of Visualforce pages.<br \/>\nThis Approach have its on limitations and advantages<\/p>\n<p>1. AngularJS allows us to extend HTML vocabulary for dynamic applications.<\/p>\n<p>2. This allows developers to create reusable components with more efficiency.<\/p>\n<p>3. In salesforce we can use both AngularJS to build single page application.<\/p>\n<p>4. Angular is most used when you want to developed an UI or front<\/p>\n<p>5. <strong> ng-app <\/strong> Declares the root element of an AngularJS application,<\/p>\n<p>6. <strong> ng-bind<\/strong> Sets the text of a DOM element to the value of an expression.<\/p>\n<p>7. <strong> ng-model<\/strong> Similar to ng-bind, but establishes a two-way data binding between the view and the scope.<\/p>\n<p>8. <strong>ng-controller<\/strong> Specifies a JavaScript controller class that evaluates HTML expressions.<\/p>\n<p>9. <strong>ng-repeat <\/strong> Instantiate an element once per item from a collection.<\/p>\n<div class=\"alert alert-success\">\n<p>To learn Basics of Angular JS ,please go through the link provided <a href=\"https:\/\/webkul.com\/blog\/starting-with-angularjs\/\" target=\"_blank\" rel=\"noopener\">https:\/\/webkul.com\/blog\/starting-with-angularjs<\/a>.<\/p>\n<\/div>\n<\/div>\n<div class=\"panel panel-primary\">\n<div class=\"panel-heading\">\n<h3 class=\"panel-title\"><i class=\"fa fa-hand-o-right\"><\/i>Advantages and Limitations<\/h3>\n<\/div>\n<\/div>\n<div class=\"panel-body\">\n<p><strong>Advantage<\/strong><\/p>\n<p>1. Two way Data Binding.<\/p>\n<p>2. It support SPA(Single Page Application).<\/p>\n<p>3. MVC(Model View Controller) pattern supported.<\/p>\n<p>4. Less code<\/p>\n<p><strong>Limitations<\/strong><\/p>\n<p>1.AngularJS Its have some limitation when we handling huge amount of data.<\/p>\n<\/div>\n<div class=\"panel panel-primary\">\n<div class=\"panel-heading\">\n<h3 class=\"panel-title\">ANGULAR JS WITH VISUALFORCE PAGE<\/h3>\n<\/div>\n<\/div>\n<div class=\"panel-body\">\n<p><strong>Apex :: <\/strong><\/p>\n<pre class=\"brush:java\">public with sharing class AngularWithVfPage {\r\n\r\n public static String getContacts() {\r\n       return JSON.serialize([select id, name, email\r\n           from contact ]);\r\n   }\r\n}\r\n<\/pre>\n<p><strong>Visualforce::<\/strong><\/p>\n<pre class=\"brush:xml\">&lt;apex:page showHeader=\"false\" applyHtmlTag=\"false\" docType=\"html-5.0\" controller=\"AngularWithVfPage\"&gt;\r\n\r\n&lt;head&gt;\r\n   &lt;meta charset=\"utf-8\"\/&gt;\r\n   &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"\/&gt;\r\n\r\n   &lt;link rel=\"stylesheet\" href=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.2\/css\/bootstrap.min.css\"\/&gt;\r\n   &lt;script src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/angularjs\/1.3.11\/angular.min.js\"&gt;&lt;\/script&gt;\r\n   &lt;script&gt;\r\n     \r\n     var App = angular.module('myApp', []);\r\n \r\n     App.controller('myctrl', function ($scope) {   \r\n    \r\n         $scope.contacts = {!contacts}\r\n     });\r\n   &lt;\/script&gt;\r\n&lt;\/head&gt;\r\n&lt;body ng-app=\"myApp\" class=\"container\" ng-controller=\"myctrl\"&gt;\r\n   &lt;table class=\"table table-bordered\"&gt;\r\n     &lt;tr&gt;\r\n       &lt;th&gt;Name&lt;\/th&gt;\r\n       &lt;th&gt;Email&lt;\/th&gt;\r\n       &lt;th&gt;Id&lt;\/th&gt;\r\n     &lt;\/tr&gt;\r\n     &lt;tr ng-repeat=\"contact in contacts | filter:query\"&gt;          \r\n       &lt;td&gt;{{contact.Name}}&lt;\/td&gt;\r\n       &lt;td&gt;{{contact.Email}}&lt;\/td&gt;\r\n       &lt;td&gt;{{contact.Id}}&lt;\/td&gt;\r\n     &lt;\/tr&gt;\r\n   &lt;\/table&gt;\r\n&lt;\/body&gt;\r\n&lt;\/apex:page&gt;<\/pre>\n<\/div>\n<div class=\"panel panel-primary\">\n<div class=\"panel-heading\">\n<h3 class=\"panel-title\">Output<\/h3>\n<\/div>\n<\/div>\n<div class=\"panel-body\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-357 size-full\" src=\"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/Page-Editor-AngularJsWithVisualforce-1.png\" alt=\"Page Editor AngularJsWithVisualforce\" width=\"1083\" height=\"447\" srcset=\"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/Page-Editor-AngularJsWithVisualforce-1.png 1083w, https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/Page-Editor-AngularJsWithVisualforce-1-300x124.png 300w, https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/Page-Editor-AngularJsWithVisualforce-1-768x317.png 768w, https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/Page-Editor-AngularJsWithVisualforce-1-1024x423.png 1024w\" sizes=\"auto, (max-width: 1083px) 100vw, 1083px\" \/><\/div>\n<div class=\"panel panel-primary\">\n<div class=\"panel-heading\">\n<h3 class=\"panel-title\"><i class=\"fa fa-user\"><\/i>Support<\/h3>\n<\/div>\n<\/div>\n<div class=\"panel-body\">\n<p>That\u2019s all for Angular JS with Visualforce Page in Salesforce, still have any issue feel free to add a ticket and let us know your views to make the product better <a href=\"https:\/\/webkul.com\/ticket\/index.php\" rel=\"nofollow\">https:\/\/webkul.com\/ticket\/index.php<\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this post, I am going to share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page Angular JS Angular is a<a href=\"https:\/\/eshopsync.com\/angular-js-visualforce-page\/\"> &#8230;<\/a><\/p>\n","protected":false},"author":4,"featured_media":356,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-354","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Angular JS with Visualforce Page<\/title>\n<meta name=\"description\" content=\"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/eshopsync.com\/angular-js-visualforce-page\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Angular JS with Visualforce Page\" \/>\n<meta property=\"og:description\" content=\"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page\" \/>\n<meta property=\"og:url\" content=\"https:\/\/eshopsync.com\/angular-js-visualforce-page\/\" \/>\n<meta property=\"og:site_name\" content=\"eShopSync\" \/>\n<meta property=\"article:published_time\" content=\"2016-06-02T14:01:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-14T10:24:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png\" \/>\n\t<meta property=\"og:image:width\" content=\"825\" \/>\n\t<meta property=\"og:image:height\" content=\"260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nansi Kela\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nansi Kela\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/\"},\"author\":{\"name\":\"Nansi Kela\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/#\\\/schema\\\/person\\\/2efe54edf3f05f1b1bff15ae7442c6a1\"},\"headline\":\"Angular JS with Visualforce Page\",\"datePublished\":\"2016-06-02T14:01:35+00:00\",\"dateModified\":\"2025-10-14T10:24:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/\"},\"wordCount\":298,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/eshopsync.com\\\/wp-content\\\/uploads\\\/2016\\\/05\\\/angular-salesforce.png\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/\",\"url\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/\",\"name\":\"Angular JS with Visualforce Page\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/eshopsync.com\\\/wp-content\\\/uploads\\\/2016\\\/05\\\/angular-salesforce.png\",\"datePublished\":\"2016-06-02T14:01:35+00:00\",\"dateModified\":\"2025-10-14T10:24:36+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/#\\\/schema\\\/person\\\/2efe54edf3f05f1b1bff15ae7442c6a1\"},\"description\":\"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#primaryimage\",\"url\":\"https:\\\/\\\/eshopsync.com\\\/wp-content\\\/uploads\\\/2016\\\/05\\\/angular-salesforce.png\",\"contentUrl\":\"https:\\\/\\\/eshopsync.com\\\/wp-content\\\/uploads\\\/2016\\\/05\\\/angular-salesforce.png\",\"width\":825,\"height\":260},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/angular-js-visualforce-page\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/eshopsync.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Angular JS with Visualforce Page\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/#website\",\"url\":\"https:\\\/\\\/eshopsync.com\\\/\",\"name\":\"eShopSync\",\"description\":\"Salesforce, SAP, Pardot Integration For E-Commerce Store\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/eshopsync.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/eshopsync.com\\\/#\\\/schema\\\/person\\\/2efe54edf3f05f1b1bff15ae7442c6a1\",\"name\":\"Nansi Kela\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g\",\"caption\":\"Nansi Kela\"},\"url\":\"https:\\\/\\\/eshopsync.com\\\/author\\\/nansi-kela80\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Angular JS with Visualforce Page","description":"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/","og_locale":"en_US","og_type":"article","og_title":"Angular JS with Visualforce Page","og_description":"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page","og_url":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/","og_site_name":"eShopSync","article_published_time":"2016-06-02T14:01:35+00:00","article_modified_time":"2025-10-14T10:24:36+00:00","og_image":[{"width":825,"height":260,"url":"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png","type":"image\/png"}],"author":"Nansi Kela","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Nansi Kela","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#article","isPartOf":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/"},"author":{"name":"Nansi Kela","@id":"https:\/\/eshopsync.com\/#\/schema\/person\/2efe54edf3f05f1b1bff15ae7442c6a1"},"headline":"Angular JS with Visualforce Page","datePublished":"2016-06-02T14:01:35+00:00","dateModified":"2025-10-14T10:24:36+00:00","mainEntityOfPage":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/"},"wordCount":298,"commentCount":0,"image":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#primaryimage"},"thumbnailUrl":"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png","inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/eshopsync.com\/angular-js-visualforce-page\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/","url":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/","name":"Angular JS with Visualforce Page","isPartOf":{"@id":"https:\/\/eshopsync.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#primaryimage"},"image":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#primaryimage"},"thumbnailUrl":"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png","datePublished":"2016-06-02T14:01:35+00:00","dateModified":"2025-10-14T10:24:36+00:00","author":{"@id":"https:\/\/eshopsync.com\/#\/schema\/person\/2efe54edf3f05f1b1bff15ae7442c6a1"},"description":"share the information how you can use Angular JS with Visualforce to display records onto your Visualforce Page","breadcrumb":{"@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/eshopsync.com\/angular-js-visualforce-page\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#primaryimage","url":"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png","contentUrl":"https:\/\/eshopsync.com\/wp-content\/uploads\/2016\/05\/angular-salesforce.png","width":825,"height":260},{"@type":"BreadcrumbList","@id":"https:\/\/eshopsync.com\/angular-js-visualforce-page\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/eshopsync.com\/"},{"@type":"ListItem","position":2,"name":"Angular JS with Visualforce Page"}]},{"@type":"WebSite","@id":"https:\/\/eshopsync.com\/#website","url":"https:\/\/eshopsync.com\/","name":"eShopSync","description":"Salesforce, SAP, Pardot Integration For E-Commerce Store","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/eshopsync.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/eshopsync.com\/#\/schema\/person\/2efe54edf3f05f1b1bff15ae7442c6a1","name":"Nansi Kela","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f330d16c8f951a609b52375b27d65ca770ad3b17c39246e85f563004947de40a?s=96&d=mm&r=g","caption":"Nansi Kela"},"url":"https:\/\/eshopsync.com\/author\/nansi-kela80\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/posts\/354","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/comments?post=354"}],"version-history":[{"count":7,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/posts\/354\/revisions"}],"predecessor-version":[{"id":13635,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/posts\/354\/revisions\/13635"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/media\/356"}],"wp:attachment":[{"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/media?parent=354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/categories?post=354"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/eshopsync.com\/wp-json\/wp\/v2\/tags?post=354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}