[英]NuxtJS: EmailJS Can't Find Dependency 'fs'
Send email using emailjs
in a NuxtJS
application. 在
NuxtJS
应用程序中使用emailjs
发送电子邮件。
Initially, fs
can't be located despite being installed. 最初,尽管安装了
fs
但无法找到它们。
This dependency was not found: fs in ./node_modules/emailjs/smtp/message.js
According to this similar question , the problem should be solved by adding target: 'node'
to webpack.config.js
. 根据这个类似的问题 ,应该通过将
target: 'node'
添加到webpack.config.js
来解决问题。 I've injected said configuration into nuxt.config.js
as is the Nuxt.js
way (I think) , but that generates the following error: 我说注射到配置
nuxt.config.js
因为是在Nuxt.js
方式 (我认为),但会生成以下错误:
WebpackOptionsValidationError: Invalid configuration object.
Webpack has been initialised using a configuration object that
does not match the API schema.
- configuration.module.rules[10] has an unknown property 'target'.
These properties are valid: object { enforce?, exclude?, include?,
issuer?, loader?, loaders?, oneOf?, options?, parser?, query?,
resource?, resourceQuery?, compiler?, rules?, test?, use? }
Does this mean that it's not currently possible? 这是否意味着它目前不可能? 😱
😱
nuxt.config.js nuxt.config.js
build: {
/*
** Run ESLint on save
*/
extend (config, { isDev, isClient }) {
config.module.rules.push({target: 'node'}) // <-- Added this
if (isDev && isClient) {
config.module.rules.push({
enforce: 'pre',
test: /\.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/
})
}
}
}
investment.vue investment.vue
export default {
asyncData ( context ) {
let email = require('../node_modules/emailjs/email');
console.log('process.server', process.server); // Evalutes to true
}
};
package.json 的package.json
"dependencies": {
"emailjs": "^2.2.0",
"fs": "^0.0.1-security",
"net": "^1.0.2",
"nuxt": "^1.0.0",
"tls": "^0.0.1"
},
Nuxt code is divided into client and server part. Nuxt代码分为客户端和服务器部分。 You tried to use the library
emailjs
within a component and this is a client part. 您尝试在组件中使用库
emailjs
,这是客户端部分。 It cannot access the fs
library (in web). 它无法访问
fs
库(在Web中)。 You need to write it on the server part (eg. in express
server that serves your pages. 您需要在服务器部分编写它(例如,在为您的页面提供服务的
express
服务器中)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.