2016-10-21 4 views
1

С обычным node JavaScript вы можете установить NODE_PATH и потребовать локальные модули. В приведенном примере:Как требовать файлы относительно root?

project 
    node_modules 
    src 
    library 
     index.js 

Вы можете установить NODE_PATH=src и require("library") где-нибудь в коде. Как это можно сделать с tsconfig.json?

Я прочитал module resolutions page и попробовал следующие конфиги.

{ 
    baseUrl: "src" 
} 

{ 
    baseUrl: ".", 
    paths: { 
    "*": [ 
     "*", 
     "src/*" 
    ] 
    } 
} 

В каждом случае он не может найти модули в src. Я установил флаг --allowJs, и когда я перехожу к относительным импортам ../library, он отлично работает.


Эквивалент в webpack resolve.root.

// webpack.config.js 

resolve: { 
    root: [ 
    path.resolve("./src") 
    ] 
} 

Эквивалент в flow [options].

# .flowconfig 

[options] 
module.system.node.resolve_dirname=node_modules 
module.system.node.resolve_dirname=src 

Похожие вопросы:

Связанные с этим вопросы:

ответ

3

Следующие, похоже, работают.

"compilerOptions": { 
    "sourceMap": true, 
    "moduleResolution": "node", 
    "target": "es2015", 
    "module": "es2015", 
    "jsx": "react", 
    "allowSyntheticDefaultImports": true, 
    "baseUrl": "src", 
} 
+1

Это строка '' '' baseUrl ":" src "' '', которая отвечает на вопрос. Спасибо, что опубликовали его. – destenson

Смежные вопросы