map-data.js.html 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>JSDoc: Source: directives/map-data.js</title>
  6. <script src="scripts/prettify/prettify.js"> </script>
  7. <script src="scripts/prettify/lang-css.js"> </script>
  8. <!--[if lt IE 9]>
  9. <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  10. <![endif]-->
  11. <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
  12. <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
  13. </head>
  14. <body>
  15. <div id="main">
  16. <h1 class="page-title">Source: directives/map-data.js</h1>
  17. <section>
  18. <article>
  19. <pre class="prettyprint source linenums"><code>/**
  20. * @ngdoc directive
  21. * @name map-data
  22. * @description
  23. * set map data
  24. * Requires: map directive
  25. * Restrict To: Element
  26. *
  27. * @param {String} method-name, run map.data[method-name] with attribute value
  28. * @example
  29. * Example:
  30. *
  31. * &lt;map zoom="11" center="[41.875696,-87.624207]">
  32. * &lt;map-data load-geo-json="https://storage.googleapis.com/maps-devrel/google.json">&lt;/map-data>
  33. * &lt;/map>
  34. */
  35. ngMap.directive('mapData', ['Attr2Options', function(Attr2Options) {
  36. var parser = Attr2Options;
  37. return {
  38. restrict: 'E',
  39. require: '^map',
  40. link: function(scope, element, attrs, mapController) {
  41. var filtered = parser.filter(attrs);
  42. var options = parser.getOptions(filtered);
  43. var events = parser.getEvents(scope, filtered, events);
  44. console.log('map-data options', options);
  45. scope.$on('mapInitialized', function(event, map) {
  46. /**
  47. * options
  48. */
  49. for (var key in options) {
  50. if (key) {
  51. var val = options[key];
  52. if (typeof scope[val] === "function") {
  53. map.data[key](scope[val]);
  54. } else {
  55. map.data[key](val);
  56. }
  57. } // if (key)
  58. }
  59. /**
  60. * events
  61. */
  62. for (var eventName in events) {
  63. if (events[eventName]) {
  64. map.data.addListener(eventName, events[eventName]);
  65. }
  66. }
  67. });
  68. }
  69. }; // return
  70. }]);
  71. </code></pre>
  72. </article>
  73. </section>
  74. </div>
  75. <nav>
  76. <h2><a href="index.html">Index</a></h2><h3>service</h3><ul><li><a href="Attr2Options.html">Attr2Options</a></li><li><a href="GeoCoder.html">GeoCoder</a></li><li><a href="NavigatorGeolocation.html">NavigatorGeolocation</a></li><li><a href="StreetView.html">StreetView</a></li></ul><h3>directive</h3><ul><li><a href="bicycling-layer.html">bicycling-layer</a></li><li><a href="cloud-layer.html">cloud-layer</a></li><li><a href="custom-control.html">custom-control</a></li><li><a href="drawing-manager.html">drawing-manager</a></li><li><a href="dynamic-maps-engine-layer.html">dynamic-maps-engine-layer</a></li><li><a href="fusion-tables-layer.html">fusion-tables-layer</a></li><li><a href="heatmap-layer.html">heatmap-layer</a></li><li><a href="info-window.html">info-window</a></li><li><a href="kml-layer.html">kml-layer</a></li><li><a href="lazy-load.html">lazy-load</a></li><li><a href="map.html">map</a></li><li><a href="map-data.html">map-data</a></li><li><a href="map-type.html">map-type</a></li><li><a href="MapController.html">MapController</a></li><li><a href="maps-engine-layer.html">maps-engine-layer</a></li><li><a href="marker.html">marker</a></li><li><a href="overlay-map-type.html">overlay-map-type</a></li><li><a href="shape.html">shape</a></li><li><a href="traffic-layer.html">traffic-layer</a></li><li><a href="transit-layer.html">transit-layer</a></li><li><a href="weather-layer.html">weather-layer</a></li></ul>
  77. </nav>
  78. <br clear="both">
  79. <footer>
  80. Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.3.0-alpha9</a>
  81. and <a href="https://github.com/allenhwkim/angular-jsdoc">angular-jsdoc</a>
  82. </footer>
  83. <script> prettyPrint(); </script>
  84. <script src="scripts/linenumber.js"> </script>
  85. <script>
  86. var href=window.location.href.match(/\/([^\/]+$)/)[1];
  87. document.querySelector("nav a[href='"+href+"']").scrollIntoView(true);
  88. if (window.location.hash == "")
  89. document.querySelector("body").scrollIntoView(true);
  90. </script>
  91. </body>
  92. </html>