Преглед изворни кода

Merge pull request #226 from ckeditor/t/224

Internal: Improved docs and implementation of the `getBindingTargets()` function.
Piotrek Koszuliński пре 8 година
родитељ
комит
fc86cbbd56
1 измењених фајлова са 7 додато и 4 уклоњено
  1. 7 4
      packages/ckeditor5-utils/src/observablemixin.js

+ 7 - 4
packages/ckeditor5-utils/src/observablemixin.js

@@ -419,7 +419,7 @@ function bindTo( ...args ) {
 // Binds to an attribute in a set of iterable observables.
 //
 // @private
-// @param {Iterable.<Observable>} observables
+// @param {Array.<Observable>} observables
 // @param {String} attribute
 // @param {Function} callback
 function bindToMany( observables, attribute, callback ) {
@@ -443,11 +443,14 @@ function bindToMany( observables, attribute, callback ) {
 // Returns an array of binding components for
 // {@link Observable#bind} from a set of iterable observables.
 //
-// @param {Iterable.<Observable>} observables
+// @param {Array.<Observable>} observables
 // @param {String} attribute
-// @returns {Array.<String>}
+// @returns {Array.<String|Observable>}
 function getBindingTargets( observables, attribute ) {
-	return Array.prototype.concat( ...observables.map( observable => [ observable, attribute ] ) );
+	const observableAndAttributePairs = observables.map( observable => [ observable, attribute ] );
+
+	// Merge pairs to one-dimension array of observables and attributes.
+	return Array.prototype.concat.apply( [], observableAndAttributePairs );
 }
 
 // Check if all entries of the array are of `String` type.