我正在尝试创建可以在 MacOS 上管理 Airplay 的 Electron 应用程序
我正在使用 Angular 和 TypeScript 来 package 此 npm 包中的 API Airplay npm package :
这是我在 TypeScript 中使用的代码:
export class AirplaySharing {
public init() {
const airplayer = window['require']('airplayer');
const list = airplayer();
list.on('update', function(player) {
console.log('Found new AirPlay device:', player.name);
});
}
}
我在调用 init()
时收到此错误
Error: Cannot find module 'airplayer'
at Module._resolveFilename
at Function.Module._resolveFilename
at Function.Module._load
at Module.require
at require
at t.init
at new t
at bs
at gs
at Ys
最佳答案
这行得通吗
import airplayer = require('airplayer');
export class AirplaySharing {
public init() {
const list = airplayer();
list.on('update', function(player) {
console.log('Found new AirPlay device:', player.name);
});
}
}
此外,使用 typescript 构造函数会更好吗?像这样:
import airplayer = require('airplayer');
export class AirplaySharing {
constructor(public list: airplayer()) {
list.on('update', function(player) {
console.log('Found new AirPlay device:', player.name);
});
}
}
希望有帮助:)
关于node.js - 在 Angular typescript 文件中导入 Node 模块时找不到模块错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54936499/