Почему команда oclif-dev manifest выполняет исходный код?

oclif-dev manifest выполнит ваш исходный код, почему это происходит?

Шаг для воспроизведения:

  1. пробег npx oclif multi mynewcli
  2. создать index.ts файл в корневой папке src/app/index.ts
  3. ты положил console.log("test..."); внутри index.ts файл
  4. импортируйте файл в свой src/commands/hello.ts
import { Command } from "@oclif/command";
import * as fs from "fs-extra";
+ import "../app/index";

export default class extends Command {
  async run() {
  }
}
  1. Теперь ты бежишь yarn run prepack, терминал показывает
mynewcli % yarn run prepack
yarn run v1.22.4
$ rm -rf lib && tsc -b && oclif-dev manifest && oclif-dev readme
test...

Я думал, что oclif будет переносить только ваш исходный код, но оказалось, что он его выполняет, что довольно странно, когда вы создаете библиотеку npm.

Текущее решение - написать все внутри функции.

0 ответов

Другие вопросы по тегам