首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Ruby on Rails与Epub.js集成

将Ruby on Rails与Epub.js集成
EN

Stack Overflow用户
提问于 2014-01-27 06:54:31
回答 1查看 568关注 0票数 3

我们正在尝试构建一个使用Epub.js实现基本加载/查看功能的电子阅读器应用程序。然而,我们正在尝试使用Rails4.0来构建这个应用程序,当我们尝试将Epub.js集成到我们的应用程序中时,我们遇到了一些问题。

我们尝试遵循Github页面上的入门部分。我们有一个Book类来处理ePub加载。我将epub.min.js、zip.min.js和inflate.js文件都放在app/assets/javascripts文件夹中。然后,我们添加必需的javascript:

代码语言:javascript
复制
<script>
var Book = ePub("url/to/book/");
Book.renderTo("area");
</script>

这就是我们遇到主要问题的地方。ePub()的参数被转换成一个url --例如,如果它是一个本地文件,那么这个url就是http://localhost:3000/books/testbook.epub。但是由于Rail的资产管道,我们不能有到资产的直接url链接,这意味着我们还没有弄清楚如何使用URL引用本地epub文件。

更复杂的事实是,即使我们在routes.rb中放置一条将url直接链接到资产的路由,这也不起作用,因为Epub.js不仅查看epub文件;它还使用解包并使用url来查看其本地内容。此外,外部urls (如Project Gutenberg中的.epub文件)也不起作用。

有什么办法可以解决这个问题吗?我是Rails的新手,所以我想知道是否有任何我忽略的关键领域。我需要对Epub.js做什么修改吗?我在谷歌和StackOverflow上寻找答案,但似乎没有太多集成Rails和Epub.js的项目。我也尝试过其他解决方案,比如Readium.js,它们似乎也不起作用。

非常感谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2014-05-09 02:25:23

您可以使库在公用文件夹中可用。此文件夹不受资产管道的影响。您不必保护它的内容,因为它已经可用。因此,我认为在公共文件夹中使用它没有问题。

只需将其放在rails_root/public上,然后正常地将其加载到您的应用程序布局中

代码语言:javascript
复制
<%= javascript_include_tag "/public/epub.js" %>

希望能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21370365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档