Использование tone.js в angular6

Я пытаюсь импортировать файл tone.js в angular 6. Как уже упоминалось в документе по установке tone.js, я установил файл tone.js.

npm - npm install tone

Я пытался импортировать тон в app.module.ts

import { ToneJs } from 'tone';
imports: [
   ToneJs,
   ...
]

Я получил это исключение:

Error: Unexpected value 'undefined' imported by the module 'AppModule'

Как я могу импортировать и использовать tone.js с угловым?

Вот моя угловая версия

ng -v
Angular CLI: 6.0.1
Node: 8.11.1
OS: darwin x64
Angular: 6.0.1

Редактировать:

Когда я пытаюсь загрузить его в компонент

import { Component } from '@angular/core';
import { ToneJs } from 'tone';
@Component({
  selector: 'app-player',
  templateUrl: './player.component.html',
  styleUrls: ['./player.component.css']
})
export class PlayerComponent {  
    constructor(private toneJs: toneJs) { }
}

Я получил:

Error: Can't resolve all parameters for PlayerComponent: (?).

1 ответ

Решение

Если вы используете angular-cli, вы можете попробовать добавить библиотеку ToneJS в ваш angular.json в качестве внешнего скрипта

projects
- architect
  - build
    - scripts
      - [ ..., "node_modules/path/to/Tone.js"]

если у вас нет файла typings.d.ts в src/typings.d.ts, создайте этот файл и добавьте эту строкуdeclare var Tone: any;

Теперь вам должны быть доступны ToneJ для использования в приложении в качестве глобальной переменной. Так что вы можете использовать это так:

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

@Component({
  selector: 'app-player',
  templateUrl: './player.component.html',
  styleUrls: ['./player.component.css']
})
export class PlayerComponent {  
    constructor() { 
        // const loop = new Tone.Loop((time) => { 
            // do something 
        }
    }
}

Кто-то по имени Дилан Лоуренс создал хороший стартер, который я нашел, когда гуглял на эту тему этим утром. Супер полезно!

Другие вопросы по тегам