Javascript包与另一种语言的包装器

时间:2018-07-25 06:43:51

标签: javascript php ruby-on-rails

我想用PHP或Ruby显示带有后端代码的图表。有很多用于该工作的javascript程序包,还有一些PHP封装程序。两者都执行相同的任务,但是用不同的语言。

  1. 我可以给前端一个API,然后由JS图表库完成工作。
  2. 我可以将数据提供给该包装程序包(composer / ruby​​ gem),然后由PHP完成。

哪种是最佳做法,为什么?

1 个答案:

答案 0 :(得分:1)

出于某些原因,我会选择一个前端库(chartjs,d3js ...):

  1. 只有一种实现方式
  2. 没有页面重新加载

只有一种实现方式

这种关注点分离将使您可以随时更改后端实现。在某些时候,您可能会同时运行php和ruby代码,以使前端不会破坏已建立的合同。

没有页面重新加载

在回答中,让前端进行繁重的工作有一些好处,其中之一就是AJAX。如果您有一个图表需要显示实时信息(例如,以秒为单位),那么您只需每隔一定时间间隔调用一次API,就可以进行节流/反跳操作。

通常,在设计系统时,需要尽可能多的解耦组件。