繁体   English   中英

如何从电子应用程序内部构建Vue视图以安装为插件

[英]How to build vue views from within electron apps to mount as plugins

我正在编写一个以电子方式运行的报告应用程序。 报告意味着我有一个数据源,用户可以编写视图以任意方式排列数据,以便可以将其打印或存档为PDF。

假设有一个学生数据列表以及课程成绩。 报表应用程序允许您创建一个包含数据表的报告,该数据表包含每个课程的名称和成绩。 因此,您最终得到成绩报告。 有人只想说出姓名和地址,另一个人想为每个学生创建图书馆证。 HTML和CSS与Vue的结合为编写此书奠定了良好的基础。

最简单的部分是从数据库中获取数据,并将json作为数据源提供给视图。 困难的部分是如何让用户将他们的报告添加到应用程序。 在开发模式下,我可以将视图添加到目录中,将其导入并作为应用程序的一部分呈现数据。 但是我在构建时可以发表自己的观点。 一旦我构建并交付了生产应用程序后,它就不可用了,用户无法再将其视图添加到该应用程序中,因为他们不重建应用程序。 他们只想指向目录,添加视图并使用它们。

我决定使用单个文件组件,因为它们允许用户简单地添加计算,并可能使用pug等保持简单。 此外,我可以直接存储有关组件的数据(如报告名称,部门名称等)

据我所知,我需要以编程方式构建这些视图并动态加载它们。

所以我的问题是:

  1. 如何在不具有用户生成文件先验知识的生产应用程序中动态构建和安装单个文件组件(.vue)?
  2. 我是否需要构建这些组件,或者是否可以利用板上工具来读取和渲染这些组件?
  3. 有没有更好的方法来提供这些文件?

详细信息:安全性不是问题。 因此,加载用户创建的视图是可以的。 它需要在电子中工作。 我确实有一个用Ruby编写的基于服务器的应用程序,该应用程序执行相同的操作,但是该服务器很快就会消失,因此它必须基于客户端并且可执行。 我无法在客户端PC上安装节点,因此它们只能构建自己的应用程序并通过热重载来包含自己的视图。

如果您对报告应用程序感兴趣,那么JS中有一个,但是基于服务器的: https : //jsreport.net/或我的基于ruby的应用程序: https : //github.com/hmt/sahib

您可以查看目录并响应正在添加的新文件。 那是您问题的动态部分。 一个不错的方法是node-fs

使用相同的库,您可以将对象与文件进行序列化和反序列化,从而使您可以从用户中加载文件。

此时,您只需要能够从一个对象到一个Vue组件来回切换。 据我所知,这没问题

new Vue (object)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM