我正在使用Gluegun创建一个节点CLI,该节点CLI在被调用时(革命性的)在您的终端中显示一条随机的狗。
Gluegun使设置和HTTP请求变得非常简单。
在commands/random.js
中:
module.exports = {
name: 'random',
alias: ['rd'],
run: async toolbox => {
const { print, system, dogExt } = toolbox
print.info('Fetching you a dog')
// Calls the extension that fetches the data
const dog = await dogExt.getRandomDog()
// DISPLAY DOG IN TERMINAL HERE WITH URL FETCHED
}
}
然后在extensions/dog-extension.js
中,我通过dog.ceo API获取数据。
module.exports = toolbox => {
async function getRandomDog() {
const api = toolbox.http.create({
baseURL: 'https://dog.ceo/api'
})
const dog = await api.get('/breeds/image/random')
return dog
}
toolbox.dogExt = { getRandomDog }
}
我的问题很简单,在API调用后如何调用负责显示图像的NPM package?
我尝试安装该软件包,将其作为插件导入
.plugin('./node_modules', {
matching: 'terminal-image-*',
hidden: true
})
并在我的命令中使用toolbox.system.run
调用它,但它总是显示command not found
。
我可以直接用node调用另一个包吗?