2015-11-20 2 views
1

я использую url.resolve() присоединиться компоненты URL из файла конфигурации, как так:url.resolve() с более чем двумя аргументами

var uri = url.resolve(config.baseUrl, this.orgId, this.appId, type) 

Оказывается, вы не можете точно сделать это с более чем два аргумента? Все что я получаю:

'%config.baseUrl%/%this.orgId%' 

Есть ли способ заставить его работать с более чем двумя аргументами? Или есть другой модуль или функция, которые я могу использовать для этого?


Нашли module, что может это сделать, но я предпочел бы быть там нативный путь, если это возможно?

+0

Является ли использование метода [ 'join'] (https://nodejs.org/api/path.html#path_path_join_path1_path2) из ​​модуля' path' вариант? – undefined

+0

Не думайте так - я не думаю, что он уменьшает количество '/' – brandonscript

ответ

1

Доза этой работы?

["aa/", "bb/", "cc/"].reduce(url.resolve) 
'ff/aa/bb/' 

["aa", "bb", "cc"].reduce((a,b) => url.resolve(a+"/",b)) 
'ff/aa/bb/' 
+0

Ницца, да! – brandonscript

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