节点js的 – 导入mssql模块在Angular 2项目中使用的错误:“不能解决'dns'”和“无法parsing'dgram'”

我在Angular 2和NodeJS开发方面都有基本的经验。 如果这个问题太简单了,我很抱歉。

我的目标是创build一个连接到SQL Server数据库的Web界面。 这个应用程序将使用户能够轻松地发送查询和从应用程序的连接数据库接收结果。

search解决scheme,我决定在通过npm安装后,将mssql模块导入到我的mssql-connection.service.ts 。 我打算通过使用dependency injection或其常规语法在服务中使用它。 但是,在编译这些情况时,我遇到了错误。

首先,试图通过import { MSSQL } from 'mssql';写入import { MSSQL } from 'mssql';来使用DI方法import { MSSQL } from 'mssql'; 我得到两个重复的错误消息node_modules/@types/mssql/index"' has no exported member 'MSSQL'.

其次,为了弥补这种情况,我编写了import 'mssql'; 。 然后,我总共得到三个错误消息:我得到两个重复的错误消息Can't resolve 'dns' in '...\node_modules\tedious\lib'和一个错误消息Can't resolve 'dgram' in '...\node_modules\tedious\lib'我也试过使用const sql = require('mssql'); 但是这会给我Cannot find name 'require'. 错误消息,前面是以前的错误消息。

我很难过,想知道为什么会发生这种情况! 我希望能够自由地使用外部模块。 我也尝试npm install @types/mssql但无济于事。 我的节点版本是v6.9.5,并使用Angular 4.0.0。 请帮忙!

先谢谢你。