2016-10-26 1 views
0

Erstellen der E-Mail-Sendeoption von Font-End mit gmail-send (https://www.npmjs.com/package/gmail-send#code-example) Nom-Modul. Bei der Implementierung bekomme ich dieses Problem 'ReferenceError: Kann die Variable nicht finden: require'. Habe ich bei web-pack-config.js verpasst?Getting ReferenceError: Variable kann nicht gefunden werden: require webpack erforderlich?

Hier ist mein webpack config.js Code,

var webpack = require('webpack'); 
var LiveReloadPlugin = require('webpack-livereload-plugin'); 

    module.exports = { 
     target: 'node', 
     entry:['./src/custom-script.js', './src/main.js'], 
     output: { 
      path: __dirname, 
      filename: "build/bundle.js" 
     }, 
     resolve: { 
      extensions: ['', '.js', '.jsx', '.json', 'index.json'] 
     }, 
     module: { 
      loaders: [ 
      {test: /\.json$/, loader: "json-loader"}, 
      { 
       test: /\.jsx?$/, 
       loader: ['babel-loader'], 
       exclude: /node_modules/, 
       query: { 
       presets: ['react', 'es2015', 'stage-0'] 
       } 
      } 
      ] 
     }, 
     plugins: [ 
      new webpack.DefinePlugin({ 
      'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV) 
      }), 
      new webpack.optimize.DedupePlugin(), 
      new webpack.optimize.OccurenceOrderPlugin(), 
      new LiveReloadPlugin() 
     ] 
    }; 

Reagieren Code,

import React from 'react'; 
import { render } from 'react-dom'; 

class SendMail extends React.Component { 
    handleSubmit() { 
     var send = require('gmail-send')({ 
      user: '[email protected]',    // Your GMail account used to send emails 
      pass: 'abcdefghijklmnop',    // Application-specific password 
      to: '"User" <[email protected]>',  // Send back to yourself 
      // from: '"User" <[email protected]>' // from: by default equals to user 
      // replyTo:'[email protected]'   // replyTo: by default undefined 
      subject: 'test subject', 
      text: 'test text' 
      // html: '<b>html text text</b>' 
     }); 

     send({       
      subject: 'attached ' 
     }, function (err, res) { 
      console.log('send(): err:', err, '; res:', res); 
     }); 
    } 
    render() { 
     return (
      <div> 
       <button className="button button-primary button-fluid" onClick={this.handleSubmit.bind(this)}>Send code</button> 
      </div> 
     ); 
    } 
} 

export default SendMail; 

Alles, was ich in diesem Code verpasst !!

+0

Ist das Front oder Back-End-Code? Require sollte von Ihrem Backend mit nodejs definiert werden, aber nicht von vorne. – Nico

+0

@Nico. Dies ist Front-End-Code – Sathya

+0

Also, keine erfordern standardmäßig verfügbar. – Nico

Antwort

0

Warum nicht Sie importieren gmailSend as-

import React from 'react'; 
import { render } from 'react-dom'; 
import gmailSend from 'gmail-send'; // Importing 

class SendMail extends React.Component { 
    handleSubmit() { 
     var send = gmailSend({ // calling 
       ... 
     }); 
    } 
     ... 
} 

export default SendMail; 
+0

noch bekomme ich dieses Problem 'ReferenceError: Kann Variable nicht finden: require' – Sathya

+0

Ist das ein Webpack-Problem? – Sathya

Verwandte Themen