Ошибка: ENOENT: такого файла или каталога нет, при попытке импортировать файл ejs внутри лямбда-функции в бессерверном проекте - PullRequest
0 голосов
/ 04 июля 2019

В одной из моих лямбда-функций я пытаюсь отправить электронное письмо, используя SES, для основной части электронной почты, которую я использую ejs, чтобы я мог передать некоторые данные и отправить настроенное электронное письмо получателю.Это было успешно, когда Serverless не был настроен с веб-пакетом.После добавления веб-пакета возвращается сообщение об ошибке: ENOENT: такого файла или каталога нет.Пожалуйста, кто-нибудь, помогите мне разобраться, как решить эту проблему.

Я попытался добавить новое правило для файлов ejs в файл webpack.config.js.

const slsw = require('serverless-webpack');
const nodeExternals = require('webpack-node-externals');

module.exports = {
  entry: slsw.lib.entries,
  target: 'node',
  // Generate sourcemaps for proper error messages
  devtool: 'source-map',
  // Since 'aws-sdk' is not compatible with webpack,
  // we exclude all node dependencies
  externals: [nodeExternals()],
  mode: slsw.lib.webpack.isLocal ? 'development' : 'production',
  optimization: {
    // We no not want to minimize our code.
    minimize: true,
  },
  performance: {
    // Turn off size warnings for entry points
    hints: false,
  },
  // Run babel on all .js files and skip those in node_modules
  module: {
    rules: [
      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: __dirname,
        exclude: /node_modules/,
      },
      {
        test: /\.ejs$/,
        loader: 'ejs-loader',
        query: {
            variable: 'data',
            interpolate : '\\{\\{(.+?)\\}\\}',
            evaluate : '\\[\\[(.+?)\\]\\]'
        }
      }
    ],
  },
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...