diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 21:46:22 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 21:46:22 -0500 |
commit | a065e04d529da1d847b5062a12c46d916408bf32 (patch) | |
tree | fe0f8bcec1ff39a3c499a2708222dcf15224ff70 /files/es/components.utils.import | |
parent | 218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (diff) | |
download | translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.gz translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.bz2 translated-content-a065e04d529da1d847b5062a12c46d916408bf32.zip |
update based on https://github.com/mdn/yari/issues/2028
Diffstat (limited to 'files/es/components.utils.import')
-rw-r--r-- | files/es/components.utils.import/index.html | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/files/es/components.utils.import/index.html b/files/es/components.utils.import/index.html deleted file mode 100644 index 66f32f06e1..0000000000 --- a/files/es/components.utils.import/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: Components.utils.import -slug: Components.utils.import -tags: - - NeedsContent - - XPConnect - - páginas_a_traducir -translation_of: Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.import ---- -<p></p> - -<p>Este método fue introducido en <a href="es/Firefox_3_para_desarrolladores">Firefox 3</a> y es usado para compartir código entre diferentes alcances(scopes) de forma sencilla. Por ejemplo, puedes importar <a href="es/XPCOMUtils.jsm">XPCOMUtils.jsm</a> para evitar copiar y pegar grandes porciones comunes de código de registración de componentes XPCOM en tus archivos de compomentes.</p> - -<pre class="eval">Components.utils.import("<a class="external" rel="freelink">resource://gre/modules/XPCOMUtils.jsm</a>"); -</pre> - -<p>Para documentación mira <a href="es/Usando_m%c3%b3dulos_de_c%c3%b3digo_JavaScript">Usando módulos de código JavaScript</a>.</p> - -<h3 id="Diferencias_con_mozIJSSubScriptLoader" name="Diferencias_con_mozIJSSubScriptLoader">Diferencias con mozIJSSubScriptLoader</h3> - -<p>Las diferencias con <code><a href="/es/docs/Mozilla/Tech/XPCOM/Reference/Interface/mozIJSSubScriptLoader" title="">mozIJSSubScriptLoader</a></code> son:</p> - -<ul> - <li>El comportamiento cuando se importa/carga el mismo código desde diferentes lugares: - <ul> - <li>el cargador de subscrip evalua el código especificado cada vez que es invocado, con el objeto global del llamador.</li> - <li><code>Components.utils.import</code> evalua el código de cada módulo sólo una vez, en su propio alcance(scope).</li> - </ul> - - <p>Por ejemplo:</p> - - <pre class="eval">var scope1 = {}, scope2 = {}; -Components.utils.import("<a class="external" rel="freelink">resource://gre/modules/JSON.jsm</a>", scope1); -Components.utils.import("<a class="external" rel="freelink">resource://gre/modules/JSON.jsm</a>", scope2); -assert(scope2.XPCOMUtils === scope1.XPCOMUtils); -</pre> - - <p>...retorna <code>true</code>, mientras que:</p> - - <pre class="eval">var someURL = "<a class="external" rel="freelink">resource://gre/modules/JSON.jsm</a>"; -var obj1 = {}, obj2 = {}; -var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"] - .getService(Components.interfaces.mozIJSSubScriptLoader); -loader.loadSubScript(someURL, obj1); -loader.loadSubScript(someURL, obj2); -assert(obj2 === obj1); -</pre> - - <p>...retorna <code>false</code>.</p> - - <p>Esto significa que <code>Components.utils.import</code> es más apropiado para compartir código (y datos?) eficientemente entre scripts JS corriendo en diferentes alcances (scopes).</p> - </li> - <li>El cargador de subscript acepta una URL para el código a cargar, mientras que <code>import</code> sólo acepta <code><a href="es/Usando_m%c3%b3dulos_de_c%c3%b3digo_JavaScript#Protocolo_resource:">resource:</a></code> y <code>file:</code> URIs.</li> -</ul> - -<h3 id="Recursos_Adicionales" name="Recursos_Adicionales">Recursos Adicionales</h3> - -<ul> - <li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=238324" title="FIXED: Implement JavaScript code-sharing module system">error 238324</a></li> - <li>La documentación en <a href="https://dxr.mozilla.org/mozilla-central/source/js/src/xpconnect/idl/xpccomponents.idl" rel="custom">xpccomponents.idl</a></li> - <li>Los casos de prueba en <code><a href="https://dxr.mozilla.org/mozilla-central/source/js/src/xpconnect/tests/unit/" rel="custom">js/src/xpconnect/tests/unit/</a></code></li> -</ul> |