您将如何调整以下脚本,以允许电子主进程使用带有ts-node的Typescript?
"scripts": { "shell": "cross-env NODE_ENV=development electron ts-node ./app/main.ts" }
sd2nnvve1#
cross-env NODE_ENV=development electron -r ts-node/register ./app/main.tshttps://github.com/TypeStrong/ts-node#programmatic您可以使用require('ts-node').register({ /* options */ })要求ts-node并注册加载程序以备将来需要。您还可以使用文件快捷方式- node -r ts-node/register或node -r ts-node/register/transpile-only -这取决于您的首选项。
cross-env NODE_ENV=development electron -r ts-node/register ./app/main.ts
vfh0ocws2#
虽然electron -r ts-node/register适用于简单的情况,但您也可以让脚本指向一个bootscript JavaScript文件,该文件只执行以下操作:
electron -r ts-node/register
require('ts-node').register() require('./app/main')
这样做的好处是你可以指定ts-node选项。例如,monorepos是必需的,你可能会指定require('ts-node').register({ project: './app/tsconfig.json' })之类的选项。有关可以指定的选项,请参见ts节点文档:https://typestrong.org/ts-node/api/interfaces/RegisterOptions.html
require('ts-node').register({ project: './app/tsconfig.json' })
2条答案
按热度按时间sd2nnvve1#
cross-env NODE_ENV=development electron -r ts-node/register ./app/main.ts
https://github.com/TypeStrong/ts-node#programmatic
您可以使用require('ts-node').register({ /* options */ })要求ts-node并注册加载程序以备将来需要。您还可以使用文件快捷方式- node -r ts-node/register或node -r ts-node/register/transpile-only -这取决于您的首选项。
vfh0ocws2#
虽然
electron -r ts-node/register
适用于简单的情况,但您也可以让脚本指向一个bootscript JavaScript文件,该文件只执行以下操作:这样做的好处是你可以指定ts-node选项。例如,monorepos是必需的,你可能会指定
require('ts-node').register({ project: './app/tsconfig.json' })
之类的选项。有关可以指定的选项,请参见ts节点文档:https://typestrong.org/ts-node/api/interfaces/RegisterOptions.html