Skip to content

Instantly share code, notes, and snippets.

@merqlove
Last active August 29, 2015 14:05
Show Gist options
  • Save merqlove/7e54a1a77dfc587d1437 to your computer and use it in GitHub Desktop.
Save merqlove/7e54a1a77dfc587d1437 to your computer and use it in GitHub Desktop.
Angular Scope Share in module
angular.module('vc.controllers', ['vc.scopes'])
.controller 'NavbarController', ['$scope', '$location', 'NavbarScope', ($scope, $location, NavbarScope) ->
$scope.breadcrumbsMenu = NavbarScope.data.breadcrumbs
$scope.$on 'navbarScopeUpdated', () ->
$scope.breadcrumbsMenu = NavbarScope.data.breadcrumbs
'use strict';
angular.module('vc.scopes')
.factory 'NavbarScope', ['$rootScope', ($rootScope) ->
class NavbarScope
methods = ['breadcrumbs']
methods.forEach (method) ->
NavbarScope[method] = (value) ->
@data[method] = value
$rootScope.$broadcast('navbarScopeUpdated')
@data = {
breadcrumbs: []
}
]
angular.module('vc.controllers')
.controller 'SomeCtrl', ['$scope', '$location', 'NavbarScope', ($scope, $location, NavbarScope) ->
NavbarScope.breadcrumbs [{uri: '#/', name: 'Some Breadcrumb'}]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment