Vyhledávání na webu

requirejs - Nelze najít externí moduly TypeScriptu v balíčku Bower


Vytvořil jsem bower balíček se zdrojovým kódem v TypeScriptu (externí moduly). V jiném projektu jsem nainstaloval můj bower balíček pomocí

bower install wrath

a odkazoval na ten balíček s použitím amd require.

import Model = require('wrath/Model');

Pak kompilátor tsc dá chybu error TS2307: Cannot find external module. Nemohu přijít na to, jak donutit kompilátor, aby hledal tento modul ve složce bower_components.

Mám takovou strukturu složek.

app
    main.ts
bower_components
    wrath
        Model.ts
        View.ts
        ...

Má někdo na to řešení?

Ve skutečnosti jsem našel způsob, jak to obejít, vytvořením symbolického odkazu na adresář balíčku bower vedle adresáře aplikace. Hledám lepší způsob.

Odpověď č. 1

Nemohu přijít na to, jak donutit překladač, aby věděl, že by měl hledat tento modul v bower_components

Prozatím neexistuje jiné řešení než pevné odkazy:

import Model  = require('./bower_components/wrath/Model');

Poznámka: existuje velká touha podporovat node_modules : https://github.com/Microsoft/TypeScript/issues/247

Poznámka: grunt-ts vám může pomoci tyto odkazy vytvořit: https://github.com/TypeStrong/grunt-ts#transforms