Javascript 从另一个包中执行NPM包
我正在制作一个npm软件包,几乎可以包装故事书。我的软件包包含配置、样式选项等。我已经使自己的软件包可执行,当使用Javascript 从另一个包中执行NPM包,javascript,node.js,npm,package.json,Javascript,Node.js,Npm,Package.json,我正在制作一个npm软件包,几乎可以包装故事书。我的软件包包含配置、样式选项等。我已经使自己的软件包可执行,当使用npm link时,所有这些都可以正常运行 我需要的是让我自己的可执行文件刚刚启动storybook,这是一个依赖项。在我的包的package.json中: "scripts": { "storybook": "start-storybook -p 6006", }, "bin": { "
npm link
时,所有这些都可以正常运行
我需要的是让我自己的可执行文件刚刚启动storybook,这是一个依赖项。在我的包的package.json中:
"scripts": {
"storybook": "start-storybook -p 6006",
},
"bin": {
"ecs-storybook": "./cli.js"
},
运行ecs故事书之后,cli.js将按照我的预期执行。我想做的就是运行故事书
脚本。我正在使用npm本身来做这件事:
#!/usr/bin/env node
const npm = require('npm');
console.log('Starting ECS storybook...');
npm.load(() => {
npm.run('storybook');
});
这可能显然不起作用。当它在package.json中查找时,我得到了错误error:missing script:storybook
,而不是我的包中的内容
(对不起,这很难解释)
有没有一种方法可以从我的包中为不同的包执行命令?我知道运行shell脚本有多种方法,但我遇到的问题是,运行命令的位置可能不正确
我希望能够在安装了此软件包的项目中运行ecs storybook
命令,而不需要将光盘刻录到node\u模块中
或任何类似的奇怪内容
有什么想法吗