This repository has been archived by the owner on Sep 8, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
Plugins
Marcelo Sauerbrunn Portugal edited this page Jun 11, 2018
·
1 revision
Creating Plugins
Example of a plugin as a function:
myFuncPlugin = function(){
var self = this;
self.someVar1 = "Hello";
self.someVar2 = "World";
//@new child scope of the Grid scope for you to create watches or whatever you want.
//@gridInstance = instance of the grid object where the plugin is initialized.
self.init = function(childScope, gridInstance){
//initialize plugin vars and functions here.
};
};
var pluginInstance = new myFuncPlugin();
Or you can use a json notation:
myJsonPlugin = {
someVar1: "Foo",
someVar2: "Bar",
//@new child scope of the Grid scope for you to create watches or whatever you want.
//@gridInstance = instance of the grid object where the plugin is initialized.
init: function(childScope, gridInstance){
//initialize plugin vars and functions here.
}
};
An example of a column reordering plugin can be found here
Registering plugins
To register a plugin you need to pass it to the ng-grid directive as part of the options object:
function userController($scope) {
var self = this;
self.pluginOne = new myFuncPlugin();
self.pluginTwo = myJsonPlugin;
self.myData = [
{name: "Moroni", age: 50},
{name: "Tiancum", age: 43},
{name: "Jacob", age: 27},
{name: "Nephi", age: 29},
{name: "Enos", age: 34}
];
$scope.gridOptions = {
data: self.myData,
plugins: [ self.pluginOne, self.pluginTwo ]
};
}