Backbone: v1.3.2 backbone.js y backbone-min.js no son lo mismo

Creado en 22 mar. 2016  ·  7Comentarios  ·  Fuente: jashkenas/backbone

La versión minificada de 1.3.2 no parece incluir
https://github.com/jashkenas/backbone/commit/1db79ddd33f65e4ca93beb3174496cf148baebe5
mientras que la versión unminfied lo hace.

No minificado

Events.once = function(name, callback, context) {
    // Map the event into a `{event: once}` object.
    var events = eventsApi(onceMap, {}, name, callback, _.bind(this.off, this));
    if (typeof name === 'string' && context == null) callback = void 0;
    return this.on(events, callback, context);
  };

Minificado

l.once=function(t,e,r){
  var n=f(p,{},t,e,i.bind(this.off,this));
  return this.on(n,e,r)
}

@jridgewell @megawac

bug

Todos 7 comentarios

He verificado que las pruebas en torno a esto fallan cuando reemplaza backbone.js con backbone-min.js en el test / index.html

Suspiro. @megawac , ¿puedes crear un PR v1.3.3 ya que parece que no puedo hacerlo bien?

Acabo de ofrecer https://github.com/jashkenas/backbone/pull/3994
Consideré cambiar el archivo index.html para usar la versión minimizada, pero no estaba seguro de si todos construirían antes de probar.

¿Habrá pronto alguna columna vertebral minificada compatible con marionetas v1.3.x? ninguno existente todavía afaik

1.3.2 funciona con Marionette 2.4.5 @elgubenis

En realidad, las vistas compuestas Mn 2.4.5 tienen un problema con la red troncal minificada 1.3.2, así es como encontré este problema para empezar.

CollectionViews se enlaza a través de una vez
this.once('render', this._initialEvents);
https://github.com/marionettejs/backbone.marionette/blob/master/src/collection-view.js#L25

Vistas compuestas, que amplían CollectionView
tienen _initialEvents que comienzan con if (this.collection) {
https://github.com/marionettejs/backbone.marionette/blob/master/src/composite-view.js#L23
en ese punto, el contexto this se pierde (debido a la necesidad de corregir https://github.com/jashkenas/backbone/commit/1db79ddd33f65e4ca93beb3174496cf148baebe5), por lo que this.collection es falsey y por lo tanto no se inicia escuchar los eventos de la colección de manera adecuada

Así que tenga cuidado si está utilizando CollectionViews de CompositeViews que tienen una colección establecida en ellos antes de renderizar.

De acuerdo, sí, tenemos que volver a publicar una versión con un archivo minificado actualizado, pero el archivo backbone.js en el maestro debería funcionar con 2.4.5. (publicaremos pronto)

¿Fue útil esta página
0 / 5 - 0 calificaciones