Я создаю расширение vscode, которое выполняет произвольное автозаполнение путей к файлам.
Я хочу взять то, что набрал пользователь, и если это значение разрешается в папку в рабочей области, я хочу перечислить все файлы в этой папке для автозаполнения.
Например, дано:
- рабочее пространство, расположенное по адресу: / home / me / my-vs-project
- с файлами:
- / дома / я / мой-против-проекта / активы / dog.png
- / дом / я / мой-против-проекта / активы / cat.jpeg
Если я введу «assets» или «./assets» в vscode, расширение сможет предоставить мне список автозаполнения:
- . / Активы / dog.png '
- . / Активы / cat.png '
Вот фрагмент кода, который не работает (возвращает 0 результатов) ..
let inputAsWorkspaceRelativeFolder = getInput(document, position); // for example, would return: '/home/me/my-vs-project/assets' for input of './assets'
let glob = inputAsWorkspaceRelativeFolder + '/*';
vscode.workspace.findFiles(glob, null, 100).then((uris: vscode.Uri[] ) => {
uris.forEach((uri: vscode.Uri) => {
console.log(uri);
});
});
По какой-то причине приведенный выше код возвращает 0 юри. Мысли о том, как я должен отформатировать глобус, чтобы это произошло? и / или есть ли лучший подход?