**
распаковывает словари.
Это
func(a=1, b=2, c=3)
совпадает с
args = {'a': 1, 'b': 2, 'c':3}
func(**args)
Это полезно, если вам нужно построить параметры:
args = {'name': person.name}
if hasattr(person, "address"):
args["address"] = person.address
func(**args) # either expanded to func(name=person.name) or
# func(name=person.name, address=person.address)
def setstyle(**styles):
for key, value in styles.iteritems(): # styles is a regular dictionary
setattr(someobject, key, value)
Это позволяет использовать такую функцию:
setstyle(color="red", bold=False)
Есть addGlobalListener
, перечислены здесь .
Вот пример: https://www.ag-grid.com/javascript-grid-column-definitions/#column-api-example
. Угловая версия примера:
onGridReady(params) {
this.gridApi = params.api;
this.gridColumnApi = params.columnApi;
params.api.addGlobalListener(function(type, event) {
if (type.indexOf("column") >= 0) {
console.log("Got column event: ", event);
}
});
}