njpipeorgan / wolfram-language-notebook

Notebook support for Wolfram Language in VS Code
Apache License 2.0
159 stars 11 forks source link

`require('mathjax')` in extensions causes error when 'wolfram-language-notebook' is installed #20

Closed yfzhao20 closed 2 years ago

yfzhao20 commented 2 years ago

最近在自己写扩展,发现只要有 require('mathjax') ,就会崩,要么报错 Cannot set property Package of #<Object> which has only a getter. ,要么 .wlnb 打不开。

复现过程:(wolfram-language-notebook 已经装好)

  1. 使用 yo code 或者 npx yo code 新建一个 javascript 扩展

  2. 在扩展文件夹下 npm install mathjax@3

  3. extension.js 中,hello world 的函数下加上 require('mathjax') ,如图。已经删除各种注释了,这里是最小的示范,只require ,不做其他任何事情。 image

  4. F5 运行插件,新建/打开一个.wlnb 文件,ctrl+shift+p 执行命令hello world ,然后立即报错: image

  5. 如果没有开 .wlnb 文件,那么是正常的,可以执行命令: image

  6. 但是此时打不开 .wlnb 文件: image

很好奇这个问题。因为上述测试,在 jupyter notebook 下是可以跑通的。

这个问题涉及最近写的扩展 Ultra Math Preview.

Environment (please complete the following information):

感谢!


一开始不小心按回车发出去了,已修改。

njpipeorgan commented 2 years ago

我试了一下,确实有这个情况。产生的异常是对称的(总是后一个激活的扩展会抛出 Cannot set property...)。好像只有mathjax会出现这个问题,所以我怀疑会不会是mathjax的问题。这里是我导入mathjax的地方。