Не удается найти модуль Ошибка при импорте модуля узла в файл машинописного текста - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь создать приложение Electron, которое может управлять Airplay на MacOS

Я использую Angular и TypeScript для упаковки API из этого пакета npm Пакет Airplay npm :

это код, который я использую в 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()

Ошибка: не удается найти модуль 'airplayer'
вModule._resolveFilename
в Function.Module._resolveFilename
в Function.Module._load
в Module.require
в случае необходимости
в t.init
в новом t
вbs
при gs
при Ys

Ответы [ 2 ]

0 голосов
/ 02 марта 2019

Вы установили пакет npm install airplayer --save?

0 голосов
/ 01 марта 2019

Будет ли это работать

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);
        });
    }
}

Также было бы лучше использовать конструктор машинописи?Вот так:

import airplayer = require('airplayer');

export class AirplaySharing {
    constructor(public list: airplayer()) {
        list.on('update', function(player) {
            console.log('Found new AirPlay device:', player.name);
        });
    }
}

Надеюсь, это поможет:)

...