【发布时间】:2019-02-05 20:29:06
【问题描述】:
互联网上有大量关于如何正确使用 Django 和 Vue 的教程和有用的帖子(在各种选项中)。 但是我没有找到一个人描述如何创建一个包含多个应用程序的 Django 应用程序,每个应用程序都有自己的 Vue 前端部分。
我正在创建一个带有 Vue 前端的 Django 应用程序,它将有很多可以非常容易地插入主系统的应用程序(使用自定义框架)。但这只是后端。我想使每个 Django 应用程序也具有前端的“插件”部分:例如在 INSTALLED_APPS 中添加此应用时,在前端“动态”呈现的一组 Vue 组件。
如何在 Vue 中提供“插件挂钩”来加载这些组件?我所看到的所有东西(使用 webpack-loader 使用 webpack 加载动态/惰性组件等)都不是我想要的。它只描述了如何加载稍后在 http 请求时间轴中预定义的组件。
我应该如何“合并”所有组件?我可以简单地在静态文件夹中创建组件并让
./manage.py collectstatic发挥作用吗?
应用程序是 SPA 还是我必须使用 Django 模板(包括 Vue 组件)都没有关系 - 两者都是可行的方法。
也许这甚至是一个 webpack 问题,应该是:我如何使用 Vue(或 React 等)从不同的子目录(如 foo_app/static/、blah_app/static/、bar_app/static)收集其源代码 - 是否有告诉 Vue/Webpack/etc 在 myproject/*/static 中搜索要合并的 Vue 组件的方法? 并且我可以包含“所有组件”(动态量)而不是另一个组件,这是这样一个系统所需要的吗?
任何人都可以在这里启发我 - 这完全不可能吗?还是我想错了方向?
谢谢。
【问题讨论】:
-
没有人知道答案??真的吗?我总是对我是唯一需要这个的人印象深刻?
标签: django vue.js dynamic plugins django-webpack-loader