2016-06-02 8 views
6

Voglio testare un sito Web React da un dispositivo sulla mia rete locale. Funziona su altri PC ma non sul mio telefono.Accesso al server Webpack Dev dalla rete locale? (React Hot Reloading sul cellulare)

Ragazzi, avete qualche idea su cosa potrebbe causare questo? Ecco come il mio file di configurazione si presenta:

const webpack = require('webpack'); 
const path = require('path'); 

module.exports = { 

    entry: { 
     mainFeedPage: [ 
      'webpack/hot/only-dev-server', 
      './src/mainFeedPage.js' 
     ], 
     venues: [ 
      'webpack/hot/only-dev-server', 
      './src/venues.js' 
     ], 
     artists: [ 
      'webpack/hot/only-dev-server', 
      './src/artists.js' 
     ] 
    }, 
    output: { 
     path: path.resolve(__dirname, 'public'), 
     filename: 'js/[name].js', 
     publicPath: '/public/' 
    }, 
    devServer: { 
     inline:true, 
     port: 4000, 
     hot: true, 
     colors: true, 
     progress: true, 
     host: '0.0.0.0' 

    }, 
    module: { 
     loaders: [ 
      { 
       test: /\.jsx?$/, 
       exclude: /node_modules/, 
       loaders: [ 
        'react-hot', 
        'babel?presets[]=react,presets[]=es2015' 
       ] 
      } 
     ] 
    }, 

    plugins: [ 
     new webpack.HotModuleReplacementPlugin(), 
     new webpack.NoErrorsPlugin(), 
     new webpack.optimize.CommonsChunkPlugin({ 

      // Export bundles for each entry and one for code they share 
      name: "shared", 
      filename: "js/shared.js", 
      chunks: ["mainFeedPage", "venues"] 
     }) 
    ], 

    resolve: { 
     modulesDirectories: ['node_modules', 'src', 'components', 'stores'], 
     extensions: ['', '.js', '.scss'], 
     root: [path.join(__dirname, './src')], 
    } 
}; 

UPDATE provato a farlo, ma non riusciva a farlo funzionare: https://github.com/gaearon/react-hot-loader/issues/107#issuecomment-85712166

risposta

0

Christian's example risolto il problema. Dovresti personalizzare i file webpack.config se vuoi usare i bundle. Questo potrebbe essere stato risolto solo su google, ma mi ci è voluto un sacco di tempo per capire come funzionano Node ed Express ...

0

Questa non è una soluzione diretta, ma ho un progetto in base al largo della React Transform boilerplate offerto da Dan Abramov e funziona perfettamente su dispositivi mobili Android. Non ho testato su iOS. È molto simile in linea di principio a React Hot Loader: https://github.com/gaearon/react-transform-boilerplate

È deprecato, ma lo è anche React Hot Loader fino al rilascio della versione 3.

Certamente, questa "soluzione" è probabilmente come colpire un chiodo con un martello. Speriamo che qualcuno possa offrire qualcosa di più semplice che non richieda lo scambio di dipendenze e configurazioni di build.