2017-10-27 1 views
1

Bisher gibt es keine AMD-Version von materializecss, die mit RequireJsSo verwenden Materialise mit RequireJs

Ich habe versucht, auf RequireJs mit Shim Config zu verwenden, um es unmöglich macht, aber ich bekomme immer eine Fehlermeldung:

require.config({ 
    baseUrl: '/resources/scripts', 
    catchError: true, 
    paths: { 
     'jquery': '//code.jquery.com/jquery-2.1.1.min', 
     'materialize': '../../build/bower_components/materialize/dist/js/materialize', 
     'velocity': '../../build/bower_components/materialize/js/velocity.min', 
     'hammerjs': '../../build/bower_components/materialize/js/hammer.min' 
    }, 
    shim: { 
     'materialize': { 
      deps: ['jquery', 'hammerjs', 'velocity'], 
      exports: 'Materialize' 
     }, 
     'velocity': { 
      deps: ['jquery'] 
     } 
    } 
}); 

der Fehler:

require.js:168 Uncaught Error: Mismatched anonymous define() module: function() 

Antwort

1

im Moment Materialise eine Menge Probleme mit requiere hat. Hier teile die Lösung, die ich gefunden habe. Es funktioniert für mich in Magento 2:

  1. laden diese "Version" materialisieren: https://github.com/ccloli/materialize/tree/AMD-fix/dist/js (beachten Sie, dass kein offizielles Release ist)
  2. var config = { paths: { 'jquery': '//code.jquery.com/jquery-2.1.1.min', 'materialize': 'Magento_Theme/js/materialize', 'velocity': 'Magento_Theme/js/velocity', 'hammerjs': 'Magento_Theme/js/hammerjs', },
    shim: { 'velocity': { deps: ['jquery'] }, 'hammerjs': { deps: ['jquery'] }, 'materialize': { deps: ['jquery', 'velocity', 'hammerjs'] } } };

Hoffe, es hilft.