在MEAN堆栈项目的客户端包括pdfmake
Including pdfmake in client side of MEAN-stack project
我有一个建立在MEAN.io堆栈上的网站,正在尝试使用pdfmake在客户端生成PDF文件。可以使用bower安装pdfmake(看起来他们使用browserfy生成客户端版本)。
我正在努力让它发挥作用。pdfmake的注入不起作用(我认为找不到它),或者pdfmake对象未定义(如果我不将pdfmake添加为依赖项)。我认为pdfmake需要以某种方式进行打包才能访问,但我不知道如何访问。
在config/assets.json中,我添加了:
"bower_components/pdfmake/build/pdfmake.js"
在我想使用pdfmake的JS文件对应的HTML中,我添加了:
<script src="bower_components/pdfmake/build/pdfmake.js"></script>
<script src="bower_components/pdfmake/build/vfs_fonts.js"></script>
我已经在Github上建立了一个基本版本。例如,如果有人能向我解释如何使pdfmake能够在软件包/system/public/controllers/index.js中使用,我将不胜感激。
我最近也遇到了类似的问题。这似乎是因为pdfmake还不能"浏览"。经过大量的故障排除,我能够通过在我的构建目录中的脚本标记简单地包含两个客户端脚本pdfmake.min.js
和vfs_fonts.js
来完成它的工作。就是这样。
尝试将这两个脚本标记从bower_components
目录移到构建目录中。确保它们在bundle.js
之前,或者通常在任何需要pdfmake的脚本之前。
我不完全理解捆绑脚本是如何看到这两个文件创建的全局对象的,但我认为这是因为他们将pdfMake设置为窗口对象:
(vfs_fonts.js
文件的启动方式如下:)
window.pdfMake = window.pdfMake || {}; window.pdfMake.vfs
由于Browserify将全局对象设置为window
,因此这种方法似乎有效。(尽管我不完全理解为什么……在他们的回购中看到这个Github问题,以获得更多解释和去全球化的npm包。)
这是我能找到的另一个相关帖子。
- 客户端服务器REST API captcha实现
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 如何将我的javascript库公开给其他客户端使用
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 返回/从Twit's客户端.get
- 将客户端特定的日期格式返回到服务器MVC4
- 从客户端捕获 HTTP 请求(包括 ajax)
- 在MEAN堆栈项目的客户端包括pdfmake
- 客户端包括在本地机器上
- Javascript客户端提供哪些数据库,不包括特定于浏览器的数据库
- 当使用json从perl/cgi向客户端发送包括换行符在内的字符串时,脚本将停止
- 为什么使用strophe.js的XMPP客户端仍然可以工作,包括flXHR.js
- 简单的AJAX web应用程序示例,包括客户端和服务器方面
- 客户端javascript源码结构的现代实践,包括CommonJS、TypeScript等
- 客户端验证,包括unicode字符范围