Angular 4 imap客户端构建,与Semver

时间:2017-10-24 14:04:11

标签: angular npm imap

我试图在Angular 4中实现Imap客户端。我需要在我的应用中使用它。

我找到了一个用npm实现Imap的节点模块:Repo

但是我遇到了问题。我在angular-cli.json

中添加以下行
"scripts": [
    ...,
    "../node_modules/imap/lib/Connection.js"
  ],

然后将其导入我的MailboxModule

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { MailboxComponent } from './mailbox.component';
import * as Imap from 'imap' ;

@NgModule({
  imports: [
    CommonModule,
    Imap
  ],
  providers : [  ],
  declarations: [MailboxComponent]
})
export class MailboxModule { }

代码编译得很好,但我最终在WebBrowser控制台中出现以下错误:

Uncaught TypeError: Invalid Version: 
  at new SemVer (semver.js:293)
  at compare (semver.js:566)
  at Function.gte (semver.js:615)
  at Object.<anonymous> (utf7.js:4)
  at Object.../../../../utf7/utf7.js (utf7.js:119)
  at __webpack_require__ (bootstrap 55f9ac3…:54)
  at Object.<anonymous> (Connection.js:7)
  at Object.../../../../imap/lib/Connection.js (Connection.js:2128)
  at __webpack_require__ (bootstrap 55f9ac3…:54)
  at Object.../../../../../src/app/mailbox/mailbox.module.ts (mailbox.component.ts:11)

这是MailboxComponent(经典)

import { Component, OnInit } from '@angular/core';


@Component({
  selector: 'app-mailbox',
  templateUrl: './mailbox.component.html',
  styleUrls: ['./mailbox.component.css']
})
export class MailboxComponent implements OnInit {
  constructor() { }

  ngOnInit() {

  }
}

1 个答案:

答案 0 :(得分:0)

看来,由于webBrowsers无法打开TCP套接字,我们无法直接在我的webapp中获取电子邮件客户端。我需要一个后端,通过IMAP或其他邮件协议连接到邮件服务器,然后通过我将在我的webapp中调用的API返回邮件。