/ / Bundle reage em um arquivo externo com o browserify - gulp, browserify, babeljs

Bundle reage em um arquivo externo com o browserify - gulp, browserify, babeljs

Então eu vi esta pergunta respondida váriasDiferentes maneiras, mas eu não consigo fazer funcionar. O pacote que eu faço parece funcionar, exceto que ele fica reagindo por dentro, tornando-o duplicado, já que também está no 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"))

});

Respostas:

1 para resposta № 1

Eu acho que você não pode se separar sem reagir se você estiver usando. Acontece que meu problema foi corrigido adicionando também reag-dom aos meus externos

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

Meu exemplo super simples de hello world importou "react-dom". :

Obrigado pela ajuda! Essas perguntas me levaram a cavar um pouco mais em versões e importações e me levou à minha resposta :)