Devolver valores de un componente con rendimiento
Los valores se pueden devolver desde un componente mediante la opción de rendimiento .
Sintaxis
{#each myval as |myval1|}}
{{ yield myval1 }}
{{/each}}
Ejemplo
El ejemplo que se muestra a continuación especifica los valores de retorno de un componente con la propiedad de rendimiento . Cree una ruta con el nombre comp-yield y abra el archivo router.js para definir las asignaciones de URL:
import Ember from 'ember';
//Access to Ember.js library as variable Ember
import config from './config/environment';
//It provides access to app's configuration data as variable config
//The const declares read only variable
const Router = Ember.Router.extend ({
location: config.locationType,
rootURL: config.rootURL
});
//Defines URL mappings that takes parameter as an object to create the routes
Router.map(function() {
this.route('comp-yield');
});
export default Router;
Cree el archivo application.hbs y agregue el siguiente código:
//link-to is a handlebar helper used for creating links
{{#link-to 'comp-yield'}}Click Here{{/link-to}}
{{outlet}} //It is a general helper, where content from other pages
will appear inside this section
Abra el archivo comp-yield.js que se crea en app / routes / e ingrese el siguiente código:
import Ember from 'ember';
export default Ember.Route.extend ({
model: function() {
//an array called 'country' contains objects
return { country: ['India', 'England', 'Australia'] };
}
});
Cree un componente con el nombre comp-yield y abra el archivo de plantilla de componente comp-yield.hbs creado en app / templates / con el siguiente código:
{{#comp-yield country=model.country as |myval|}}
<h3>{{ myval }}</h3>
{{/comp-yield}}
{{outlet}}
Abra el archivo comp-yield.hbs creado en app / templates / components / e ingrese el siguiente código:
<h2>List of countries are:</h2>
//template iterates an array named 'country'
{{#each country as |myval|}} //each item in an array provided as blobk param 'myval'
{{ yield myval }}
{{/each}}
Salida
Ejecute el servidor Ember; recibirá el siguiente resultado:
Cuando haga clic en el enlace, mostrará la lista de objetos de una matriz como se muestra en la captura de pantalla a continuación: