小编Ste*_*son的帖子

使节点应用程序在 NX 工作区中可执行

我真的很喜欢NX 工作区的结构,这促使我在构建新的 CLI 项目时开始使用它。

我开始创建一个,@nrwl/node:application但目前我在使其可执行时遇到一些问题。

我相信这不是 NX 本身的问题,但我无法#!/usr/bin/env node在 main.ts 文件中添加 shebang,因为 tsc 转译器会抱怨。

Module parse failed: Unexpected character '#' (1:0) File was processed
with these loaders:  * ./node_modules/ts-loader/index.js
Run Code Online (Sandbox Code Playgroud)

我已"bin": {"cli": "main.js"}在 package.json 文件中添加了该属性,但如果我在没有 shebang 的情况下运行 main.js 文件,我将收到此错误:

line 1: syntax error near unexpected token `('
C:\Users\*\AppData\Roaming\npm/node_modules/*/dist/apps/*/main.js: line 1: `(function(e, a) { for(var i in a) e[i] = a[i]; }(exports, /******/ (function(modules) { // webpackBootstrap
Run Code Online (Sandbox Code Playgroud)

有什么聪明的方法可以解决这个问题吗?

重现步骤:

  1. npx create-nx-workspace@latest cli-workspace --preset empty --cli …

shebang command-line-interface node.js typescript nrwl-nx

7
推荐指数
1
解决办法
2154
查看次数