Using toastr in the AngularJS way

angularjs, javascript, toastr

Solution

Yes. Pretty simply:

app.factory('notificationFactory', function () {
    return {
        success: function (text) {
            toastr.success(text,"Success");
        },
        error: function (text) {
            toastr.error(text, "Error");
        }
    };
});

Resolve factory in controller. Customize messages, notifications/etc in factory.

Despite the idea that code adds another abstraction, it's really effective.

Problem

Currently, I just call `toastr.success('my message')` within a controller where required. This work fine, but it feels a bit dirty to me. Is there a 'best practice' or recommended 'angularjs' way of using the toastr.js library?

Original source