2

我一直在使用 Pyodide 在我的网站上运行一些 python。直到最近它一直在工作,但是现在开始出现此错误,

Uncaught ReferenceError: languagePluginLoader is not defined
at 2347:162

一些搜索表明,无论如何,这种方法在 pyodide 中已被弃用

https://pyodide.org/en/stable/usage/api/js-api.html#globalThis.loadPyodide

并且不使用 languagePluginUrl 我应该使用 loadPyodide。

我不知道该怎么做,我对js一无所知,只有python,

我的代码是...

<script type="text/javascript">
    languagePluginLoader.then(() => {
    pyodide.loadPackage(['numpy']).then(() => {
        pyodide.runPython(`   


    # My python code here


      `);
  });});

</script>

这曾经工作得很好,所以我想我只需要使用新方法。任何将其转换为新方法的帮助表示赞赏 - 谢谢。

4

1 回答 1

3

您可能正在使用更新版本的 pyodide。从 0.18.0 开始,您应该使用loadPyodidepyodide 基本 url,它pyodide在回调中给出对象:

const PYODIDE_BASE_URL = "https://cdn.jsdelivr.net/pyodide/v0.18.0/full"

loadPyodide({ indexURL: PYODIDE_BASE_URL }).then((pyodide) => {
  globalThis.pyodide = pyodide      // you might also want to store pyodide globally so 
                                    // so you can access anywhere in the scope
  pyodide.loadPackage(['numpy']).then(() => {
    pyodide.runPython(`   
    # My python code here
  `);
});});
于 2021-08-27T16:42:18.863 回答