Vue-material: Weitere Build-Probleme

Erstellt am 10. Jan. 2017  ·  3Kommentare  ·  Quelle: vuematerial/vue-material

@marcosmoura Du wirst mich hassen :(

Mit der Änderung, die Sie gerade an Externals vorgenommen haben, verwenden Sie jetzt Vue und VueMaterial von

bug

Hilfreichster Kommentar

Ich habe jetzt eine funktionierende Lösung, die meiner Meinung nach die richtige Lösung ist.

Die Webpack-Dokumentation lässt viel zu wünschen übrig, aber nach dem Lesen der vollständigen Konfigurationsdokumentation ist hier die Syntax, die sowohl für den Modulimport als auch für Skript-Tags funktioniert:

  externals: {
    vue: {
        commonjs: "vue",
        commonjs2: "vue",
        amd: "vue",
        root: "Vue",
    }
  }

Wenn Sie den Exporttyp umd , können wir den externen Namen für jeden Typ angeben, sodass wir normalerweise vue für Modulimporte und Vue für die Verwendung von Skript-Tags verwenden können.

Macht das Sinn? Ich kann jetzt den Hass verstehen, den Javascript-Build-Umgebungen bekommen ... Die Dinge scheinen nie so einfach zu sein, wie sie zuerst erscheinen. Ich entschuldige mich, dass ich Ihnen das letzte Mal eine halbgare Lösung gegeben habe.

Alle 3 Kommentare

Ich habe jetzt eine funktionierende Lösung, die meiner Meinung nach die richtige Lösung ist.

Die Webpack-Dokumentation lässt viel zu wünschen übrig, aber nach dem Lesen der vollständigen Konfigurationsdokumentation ist hier die Syntax, die sowohl für den Modulimport als auch für Skript-Tags funktioniert:

  externals: {
    vue: {
        commonjs: "vue",
        commonjs2: "vue",
        amd: "vue",
        root: "Vue",
    }
  }

Wenn Sie den Exporttyp umd , können wir den externen Namen für jeden Typ angeben, sodass wir normalerweise vue für Modulimporte und Vue für die Verwendung von Skript-Tags verwenden können.

Macht das Sinn? Ich kann jetzt den Hass verstehen, den Javascript-Build-Umgebungen bekommen ... Die Dinge scheinen nie so einfach zu sein, wie sie zuerst erscheinen. Ich entschuldige mich, dass ich Ihnen das letzte Mal eine halbgare Lösung gegeben habe.

Auch eine andere Frage, die meiner Meinung nach damit zusammenhängt. In index.js legen Sie window.VueMaterial fest.

Ich kann in der gesamten Quelle nirgendwo sehen, wo Sie es jemals wieder verwenden; Es sieht so aus, als ob Sie dies sehr kurz vor der ersten Veröffentlichung codiert haben.

Dies scheint bei anderen Vue-Plugins nicht üblich zu sein. Es vereitelt einen der Zwecke der Verwendung von Webpacks und Modulen: die Dinge in Schach zu halten. Webpack und Freunde kümmern sich darum, VueMaterial an den richtigen Ort zu bringen.

Ich vermute, dass dies nur ein vergessenes Stück Code ist, das wahrscheinlich entfernt werden sollte, da Ihr aktuelles Webpack dafür sorgt, dass diese Variable verfügbar ist.

Der externe Trick funktionierte einwandfrei!
Die Fenstervariable wurde erstellt, um mit dem Standalone-Build zu arbeiten, um Vue.use(VueMaterial) zu verwenden.
Aber mit den neuen Externals wird dies obsolet:

  externals: {
    vue: {
      commonjs: 'vue',
      commonjs2: 'vue',
      amd: 'vue',
      root: 'Vue',
      var: 'Vue'
    }
  }

Vielen Dank @korylprince!!!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen