javascript - 找不到命令:nodejs-backend
问题描述
我正在尝试创建自己的包,该包将通过运行 node package execute 来初始化样板项目npx
。我曾经使用它创建了一个node.js
,inquirer
并且在我运行时它起作用了:
npx ts-config-files.json
这是我创建并发布的包npm
,它生成tsconfigs
.
我在运行命令时刚刚创建的那个:
npx nodejs-backend
我明白了:
npx: installed 135 in 47.951s
command not found: nodejs-backend
而不是收到一些inquirer
消息。我正在处理的代码可以在这里找到。
我一直在想这是因为我正在使用typescript
,但是当我改用它时,javascript
它仍然是一样的。
主文件示例代码server.ts
:
#!/usr/bin/env node
import path from "path";
import inquirer from "inquirer";
import { writeFile, readFile } from "fs/promises";
import fs from "fs";
import helperFunction from "./constants";
import { exec } from "child_process";
import { objJS, objTS } from "./utils";
import chalk from "chalk";
helperFunction.prompt();
const cwd = process.cwd();
const base_name = path.basename(cwd); // node
const main = async () => {
const baseDir: string = "src";
let fileName: string = "";
let packageObject: typeof objTS | typeof objJS;
const { language } = await inquirer.prompt([
{
choices: ["JavaScript", "TypeScript"],
type: "checkbox",
default: "TypeScript",
name: "language",
message: "which language do you want to use for your backend app?",
},
]);
....
解决方案
您忘记添加:
"bin": {
"nodejs-backend": "server.ts"
},
哪个应该在package.json
.
npm link
此外,在尝试使用之前,请确保在您的存储库中npx
安装它,否则它将尝试从https://registry.npmjs.org注册表而不是本地安装它。
话虽这么说,我相当肯定它不会作为打字稿执行,即使你已经这样做了(这不是你现在的问题,但它会是)。为此,您可以安装ts-node
和使用#! /usr/bin/env ts-node
.
推荐阅读
- scala - 将数据从 kafka 流式传输到 http
- python - 当日期属于特定月份时,python pandas过滤日期列
- listview - Flutter ListView builder 转到索引 [x]
- html - IMPORTXML 和在 Google 表格中使用 XPath 探测
- python - -6 的 proc_status 是什么意思?
- php - 使用 PHP 从网站或文本文档中提取数据并保存在数据库中
- neo4j - Neo4j - 关系建模问题
- android - 显示基于所选图像的结果
- c - C - MPI 文本文件打开
- python - Python Beautiful Soup 'NavigableString' 对象没有属性 'get_text'