如何将自定义转换器附加到编译器主机?

时间:2019-07-02 04:06:42

标签: typescript tsc

我有一个自定义的TypeScript观察器,看起来像:

const compilerHost = typescript.createWatchCompilerHost(config.fileNames, config.options, typescript.sys, undefined, reportDiagnostic)
typescript.createWatchProgram(compilerHost)

我想连接一个自定义转换器,该转换器在观察者编译我的.ts文件时使用。如果我要进行一次编译,我会做类似的事情,将变压器作为最后一个参数。

const program = typescript.createProgram(config.fileNames, config.options)
const emitResult = program.emit(undefined, undefined, undefined, undefined, { before: [ transformer(program) ] })

但是,我找不到任何将转换器添加到编译器主机或监视程序创建中的方法。

如何将自定义转换器添加到手表编译器主机?

理论上做到这一点的一种方法是向CreateProgram提供一个自定义createWatchCompilerHost,该emit在用我的自定义转换器覆盖的返回对象上具有DBMS_SCHEDULER.SET_JOB_ARGUMENT_VALUE (JOB_NAME => THE_JOB_NAME,              ARGUMENT_NAME => 'in_study_count', ARGUMENT_VALUE => IN_STUDY_COUNT) 功能。我不清楚这条道路的现实程度,目前正在寻找更好的选择。

1 个答案:

答案 0 :(得分:0)

以下是功能性的(对于我而言),但是我并不喜欢它。希望看到一些更好的答案。

fig = plt.figure(figsize = (10, 5))
ax = fig.add_subplot(111)

pd.Series([10, 20, 30, 40, 50], index =['a', 'b', 'c', 'd', 'e']).plot.bar(ax = ax)

py.iplot_mpl(fig)