eine Bibliothek aus einem CDN verwenden Ich mag react.min.js
von einem CDN in der Produktion verwenden (zB https://unpkg.com/[email protected]/dist/react.min.js)Wie in einem Webpack Projekt in Produktion
was den besten Weg ist Webpack zu bekommen meine import React from 'react'
Aussagen zu verwandeln in const React = window.React
statt node_modules/react
in das Bündel zu bauen?
Ich mache es mit resolve.alias
wie folgt aus:
In index.html
:
<head>
<script type="text/javascript" src="https://unpkg.com/[email protected]/dist/react.min.js"></script>
<script type="text/javascript" src="/assets/bundle.js"></script>
</head>
In webpack.prod.config.js
:
alias: {
react$: './getWindowReact',
},
getWindowReact.js
:
module.exports = window.React;
Hinweis: In der alten Frage habe ich nicht erkannt, dass Gebäude React in einem Webpack-Bundle mit NODE_ENV=production
würde die propTypes
Schecks ausziehen. Eine der Antworten konzentriert sich darauf.
So stellt sich zum Laden aus Ich habe mich geirrt, dass React mit Webpack erstellt wurde, also würde das nicht funktionieren. Aber es scheint die richtige Antwort für die Verwendung eines Moduls zu sein, das mit Webpack erstellt wurde, also werde ich diese Antwort akzeptieren. – Andy
@Andy Ich verstehe Ihren Kommentar möglicherweise nicht vollständig, aber was hier vorgeschlagen wurde, erfordert nicht, dass die zu ladende Bibliothek mit Webpack erstellt wird. All dieses "externe" Beispiel sagt webpack "wenn ein Modul" reagieren "anfordert, gibt" window.React "zurück. – Aaronius
@Aaronius yeah, tut mir leid, ich habe zu der Zeit die '' '' '' '' '' 'externen' '' '' '' externen '' '' '' '' externals '' missverstanden ... die Dokumente für sie sind irgendwie peinlich. – Andy