/ / Bundle reagisce in un file esterno con browserify: gulp, browserify, babeljs

Bundle reagisce in un file esterno con browserify - gulp, browserify, babeljs

Quindi ho visto questa domanda rispondere a diversimodi diversi ma non riesco a farlo funzionare. Il pacchetto che creo sembra funzionare, eccetto che reagisce all'interno, rendendolo duplicato poiché è anche in vendor.js.

var gulp = require("gulp");
var source = require("vinyl-source-stream");
var browserify = require("browserify");



gulp.task("default", function() {

// app
var appBundler = browserify({
entries: ["./client/main.js"],
transform: [["babelify", {"presets": ["es2015", "react"]}]]
})

appBundler.external("react")

appBundler.bundle()
.pipe(source("bundle.js"))
.pipe(gulp.dest("./public"))

// vendors
browserify({
debug: true,
require: ["react"]
}).bundle()
.pipe(source("vendors.js"))
.pipe(gulp.dest("./public"))

});

risposte:

1 per risposta № 1

Immagino che tu non possa reagire senza reagire se lo stai usando. Risulta che il mio problema è stato risolto aggiungendo anche react-dom ai miei esterni

appBundler.external(["react", "react-dom"])

Il mio esempio di super ciao mondo ha importato "react-dom". :

Grazie per l'aiuto! Queste domande mi hanno spinto a scavare un po 'più a fondo nelle versioni e nelle importazioni e mi hanno portato alla mia risposta :)