【问题标题】:How to use NPM Modules with Flask?如何在 Flask 中使用 NPM 模块?
【发布时间】:2019-01-26 15:51:39
【问题描述】:

我有一个 python 应用程序,我正在使用 render_template() 函数通过 Flask 将其部署到网页上。同时,我正在尝试使用 npm 将一些 javascript 模块合并到我的代码中。虽然我已在 static 文件夹中正确安装了所需的模块以及所有其他 javascript 文件,但代码拒绝识别这些模块。

我的 Flask CLI 显示我的本地开发服务器已正确定位模块文件,但如果我运行 var module = require('module'),则代码显示在通过浏览器运行时没有任何迹象。这适用于我是否将此脚本包含在我的 html 模板中的 template 文件夹中,还是包含在 static 文件夹中的外部 javascript 文件中。

有趣的是,如果我通过 npm CLI 使用 node script.js 运行相同的外部 javascript 文件,脚本将执行。有人可以解释我做错了什么以及为什么会这样吗?我对 node.js、npm 完全陌生,今天才开始,所以任何帮助都将不胜感激。

我目前的工作是基于以下 6 个投票的答案:How can I serve NPM packages using Flask?

【问题讨论】:

    标签: javascript python node.js flask npm


    【解决方案1】:

    您可以通过生成文件并导航到应用程序中的本地 url 而不是使用浏览器,将电子用作 python 应用程序的 ui。有了这个,您将拥有一些节点功能。

    【讨论】:

      【解决方案2】:

      在不了解更多信息的情况下,这有点像在黑暗中刺伤,而且很晚了,但是,我用以下方法解决了类似的问题:

      app = Flask(__name__,
         static_folder = './public',
         template_folder="./static")
      

      【讨论】:

        【解决方案3】:

        npm 是。 Node.js 包管理器工具。它仅用于 node.js 应用程序。 如果您的应用程序前端是 react 或 vue 框架,而您的后端是 node.js 框架示例 Express 或 Koa,则使用 npm 很好。但现在你的后端是 Flask ,你知道Python包管理工具是Pip,所以如果你使用Npm,你应该在前端使用node,后端是flask,前端启动npm start,后端启动python app.py

        【讨论】:

        • 考虑使用一个使用npm、node和webpack的模板,我应该同时运行flask run和npm start吗?无论如何只使用烧瓶运行和静态文件?
        猜你喜欢
        • 2016-03-23
        • 2020-09-01
        • 1970-01-01
        • 2019-10-28
        • 2014-03-07
        • 2020-04-22
        • 2014-11-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多