alleyinteractive / alleyinteractive/wordpress-fieldmanager

Allow multiple options to be passed via custom_args_js_event

Offen
#483 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
scope:datasource
Vorherrschende Sprache
PHP
Sterne
563
Forks
99
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Currently, you can only pass one value through your `custom_args_js_event` event without some creative coding.

The current [event trigger](https://github.com/alleyinteractive/wordpress-fieldmanager/blob/d739dabaebeb40f9a4fc551735ace627a6979982/js/fieldmanager-autocomplete.js#L32) could be modified to pass an object as an argument. This object will be passed by reference, and any hook will be able to modify it and set e.g. `args.category = 123;`.

The current implementation is:

``` js
// Check for custom args
var custom_args_js_event = $el.data( 'customArgsJsEvent' );
var custom_data = '';
if ( 'undefined' !== typeof custom_args_js_event && null !== custom_args_js_event ) {
var custom_result = $el.triggerHandler( custom_args_js_event );
if ( 'undefined' !== typeof custom_result && null !== custom_result ) {
custom_data = custom_result;
}
}
```

A better implementation would be:

``` js
// Check for custom args
var custom_args_js_event = $el.data( 'customArgsJsEvent' );
var custom_data = {};
if ( 'undefined' !== typeof custom_args_js_event && null !== custom_args_js_event ) {
$el.triggerHandler( custom_args_js_event, custom_data );
}
```

We need to be concerned with backwards compatibility here, and maybe check the result and if the result is undefined, then look to the object.

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.