Pyodide languagePluginLoader 未定义

Pyodide languagePluginLoader is not defined

我一直在使用 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>

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

您可能正在使用较新版本的 pyodide。从 0.18.0 开始,您应该将 loadPyodide 与 pyodide 基数 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
  `);
});});