2016-10-26 1 views
0

Создание опции отправки электронной почты с конца шрифта с помощью gmail-send (https://www.npmjs.com/package/gmail-send#code-example) nom module. Во время реализации этого я получаю эту проблему «ReferenceError: Не могу найти переменную: require». Я пропустил веб-pack-config.js?Получение ReferenceError: Невозможно найти переменную: требуется отредактировать webpack?

Вот мой WebPack config.js код,

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() 
     ] 
    }; 

Реагировать код,

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; 

Все, что я пропустил в этом коде !!

+0

является то, что передний или бэкэнд код? Требование должно быть определено из вашего бэкэнда с помощью nodejs, но не с фронта. – Nico

+0

@Nico. это код переднего конца – Sathya

+0

Итак, по умолчанию не требуется доступ. – Nico

ответ

0

Почему вы не импортировать gmailSend как-

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

все еще я получаю эту проблему 'ReferenceError: Не могу найти переменную: require' – Sathya

+0

Является ли это проблемой веб-пакета? – Sathya

Смежные вопросы