Estoy usando require.js (http://requirejs.org/) para una serie de funciones en mi sitio y hasta ahora parece funcionar bien. Sin embargo, me he encontrado con un problema al intentar incluir el código de Google Analytics. El código parece negarse a agregar un utm.gif y no está enviando un faro a Google. Me pregunto si se trata de un alcance.Problema con Google Analytics con Require.js
define(function() {
var Analytics = {};
Analytics.Apply = function() {
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
}
return Analytics;
});
ga.debug no arroja errores y utm.gif no aparece. Si muevo el código fuera de require.js (con esto me refiero al javascript modular que usa require.js, así que simplemente lo agrego en línea a la página), utm.gif se agrega a la página con éxito y ga.debug envía su baliza.
me encontré con este sitio que parece estar usando con éxito, pero no estoy seguro de lo que está haciendo sitio diferente: http://paceyourself.net/2011/05/14/managing-client-side-javascript-with-requirejs/
Cualquier otra persona que tenga problemas combinando require.js y GA?
Por lo tanto, no parece ser un problema de alcance. Al usar el código: – boolean
(Bah, realmente deseo introducir dio una nueva línea y cambiar + ingresar publicado, no al revés ... y la caja de comentarios se comió todos mis saltos de línea!) Así que parece ser un problema de alcance Cuando se utiliza el código: \t requieren ([ "jQuery"], la función ($) { \t var foo = require ('valor'); }); \t consola.log (foo); No puedo acceder a 'foo'. Supongo que en lo que respecta a javascript, esto tiene sentido, ya que foo solo existe en el ámbito de require. Sin embargo, sospecho que cuando ga.js se genera está buscando _gaq, que no se puede encontrar porque está en requirido. ¿Alguna idea? – boolean
Bueno, estoy bastante seguro de que es imposible de leer. – boolean