pauloborges / meteor-mapbox

Mapbox.js for Meteor apps
43 stars 34 forks source link

pauloborges:mapbox

Mapbox.js for Meteor apps.

Version matrix:

Mapbox JS Mapbox GL
2.2.3 0.12.1

Deprecation notice

Unfortunately I can't maintain this project anymore. So it can be broken. Use it with caution.

Install

$ cd to/my/meteor/project
$ meteor add pauloborges:mapbox@2.2.3_2

or (if you want to modify the code):

$ cd to/my/meteor/project
$ mkdir packages # ensure that packages folder exists
$ git clone https://github.com/pauloborges/meteor-mapbox.git packages/pauloborges:mapbox
$ meteor add pauloborges:mapbox

Supported plugins

All plugins listed here are supported:

Usage

Call Mapbox.load() in your client code. Use Mapbox.loaded() to check if it finished loading. This function is reactive.

API

Mapbox.load(opts)

Mapbox.load({
    gl: boolean // optional
    plugins: list // optional
})

Examples

// Basic
Meteor.startup(function(){
    Mapbox.load({
        plugins: ['minimap', 'markercluster']
    });
});

Deps.autorun(function () {
  if (Mapbox.loaded()) {
    L.mapbox.accessToken = MY_ACCESS_TOKEN;
    var map = L.mapbox.map('map', MY_MAP_ID);
  }
});

// Using a template's rendered callback
Meteor.startup(function(){
    Mapbox.load();
});

Template.Map.rendered = function () {
    this.autorun(function () {
        if (Mapbox.loaded()) {
            L.mapbox.accessToken = TOKEN;
            var map = L.mapbox.map('map', MAP_ID);
        }
    });
};