{"id":1086,"date":"2015-08-01T06:37:01","date_gmt":"2015-08-01T06:37:01","guid":{"rendered":"http:\/\/www.honobono-life.info\/wpeng\/?p=1086"},"modified":"2015-08-01T06:37:01","modified_gmt":"2015-08-01T06:37:01","slug":"flash-message-to-user-signup-with-angularjs","status":"publish","type":"post","link":"http:\/\/www.honobono-life.info\/wpeng\/flash-message-to-user-signup-with-angularjs\/","title":{"rendered":"Ruby on Rails Tutorial flash message to user signup with AngularJS"},"content":{"rendered":"<p><strong>1)flash message with AngularJS<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/javascripts\/mymodule.js.erb<\/p>\r\n\r\n<pre class=\"prettyprint\">\r\nmyModule.factory(&quot;flashService&quot;, function ($rootScope) {\r\n  var queue = [];\r\n  var currentMessage = &quot;&quot;;\r\n\r\n  $rootScope.$on(&quot;$routeChangeSuccess&quot;, function() {\r\n    currentMessage = queue.shift() || &quot;&quot;;\r\n  });\r\n\r\n  return {\r\n    push: function (msg) {\r\n      queue.push(msg);\r\n    },\r\n    get: function () {\r\n      return currentMessage;\r\n    }\r\n  };\r\n});<\/pre>\r\n\r\n<p>*routeChangeSuccess<br \/>\r\nref.https:\/\/docs.angularjs.org\/api\/ngRoute\/service\/$route<\/p>\r\n\r\n<p><strong>2)AngularJS controller &quot;UsersNewCtrl&quot;<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/javascripts\/mymodule.js.erb<\/p>\r\n\r\n<pre class=\"prettyprint\">\r\nmyModule.controller(&quot;UsersNewCtrl&quot;, function($scope, userResource, $location, flashService) {\r\n  var msg = &quot;Welcome to the Sample App!&quot;;\r\n  $scope.user = new userResource();\r\n  $scope.submit = function() {\r\n    function success(response) {\r\n      flashService.push(msg);\r\n      $location.path(&quot;\/users\/&quot; + response.id);\r\n    }\r\n    function failure(response) {\r\n      console.log(&quot;failure&quot;, response)\r\n    }\r\n    userResource.create($scope.user, success, failure);\r\n  };\r\n});<\/pre>\r\n\r\n<p><strong>3)AngularJS show view<\/strong><\/p>\r\n\r\n<p><strong>1.show view<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/templates\/users\/show.html.erb<\/p>\r\n\r\n<div ng-non-bindable><pre class=\"prettyprint\">\r\n&lt;div ng-controller=&quot;UsersShowCtrl&quot;&gt;\r\n  &lt;div class=&quot;row&quot;&gt;\r\n    &lt;div class=&quot;bg-success&quot; ng-show=&quot;getMessage()&quot;&gt;\r\n      &lt;p&gt;{{getMessage()}}&lt;\/p&gt;\r\n    &lt;\/div&gt;\r\n........<\/pre><\/div>\r\n\r\n<p><strong>2.AngularJS controller &quot;UsersShowCtrl&quot;<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/javascripts\/mymodule.js.erb<\/p>\r\n\r\n<pre class=\"prettyprint\">\r\nmyModule.controller(&quot;UsersShowCtrl&quot;, function($scope, $routeParams, userResource, flashService) {\r\n  $scope.user = userResource.show({ id: $routeParams.id });\r\n  $scope.getMessage = function() {\r\n    return flashService.get();\r\n  };\r\n});\r\n<\/pre>\r\n","protected":false},"excerpt":{"rendered":"<p>1)flash message with AngularJS $ vi app\/assets\/javascripts\/mymodule.js.erb myModule.factory(&quot;flashService&quot;, function ($rootScope) { var queue = []; var currentMessage = &quot;&quot;; $rootScope.$on(&quot;$routeChangeSuccess&quot;, function() { currentMessage = queue.shift() || &quot;&quot;; }); return { push: function (msg) { queue.push(msg); }, get: function () { return currentMessage; } }; }); *routeChangeSuccess ref.https:\/\/docs.angularjs.org\/api\/ngRoute\/service\/$route 2)AngularJS controller &quot;UsersNewCtrl&quot; $ vi app\/assets\/javascripts\/mymodule.js.erb myModule.controller(&quot;UsersNewCtrl&quot;, function($scope, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[137],"tags":[35,152,145],"amp_enabled":true,"_links":{"self":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1086"}],"collection":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/comments?post=1086"}],"version-history":[{"count":1,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1086\/revisions"}],"predecessor-version":[{"id":1087,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1086\/revisions\/1087"}],"wp:attachment":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/media?parent=1086"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/categories?post=1086"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/tags?post=1086"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}