如何将数据模板化为Smart Admin主题的Ajax版本?

时间:2015-04-24 08:55:38

标签: javascript jquery ajax laravel-5 smartadmin

我正在构建一个客户端的应用程序,我在beck端使用Laravel5开发Web服务,我将使用Smart Admin Theme,特别是Ajax版本来使用它。

我已经使用过这个主题的HTML版本,我仍然使用Laravel作为后端。我可以简单地使用Laravel提供的Blade模板引擎并将数据注入视图中。

但是现在我将使用Ajax版本,我应该如何将数据模板化到视图中。我可以请求Web服务获取数据,它将以JSON格式返回。这部分对我来说很清楚,因为我之前已经这样做了。

大多数小部件都有内置的集成,例如jquery数据表和主题中使用的完整日历库。我可以看到这里会注入数据,但论坛和其他内容如何。我是应该通过使用Jquery来操纵DOM还是有更好的方法。

Angular提供了一种方法,我可以通过双向数据绑定传入数据,我可以使用ng-repeat将其注入表和无序列表,但我将如何在此处完成此操作。我可以使用模板系统吗?

3 个答案:

答案 0 :(得分:2)

感谢您的回答,但不幸的是,我无法理解这些。尽管如此,我感谢您的意见。

最后我使用rivet.js库。该库为构建现代Web应用程序提供了轻量级且功能强大的数据绑定+模板解决方案。

他们有一个很好的documentation来帮助发展。

现在,我可以将数据模板化为像{ data.someAttribute }这样的视图,如下面的代码片段所示:

<section id="auction">
  <h3>{ auction.product.name }</h3>
  <p>Current bid: { auction.currentBid | money }</p>

  <aside rv-if="auction.timeLeft | lt 120">
    Hurry up! There is { auction.timeLeft | time } left.
  </aside>
</section>

然后我可以简单地将#auction拍卖标签与拍卖JSON对象绑定在一起,如下所示:

rivets.bind($('#auction'), {auction: auction})

这使得从服务器获取数据并将数据模板化到视图中变得非常容易。现在,移动应用程序最终可以使用相同的后端Web服务。

我希望这有助于某人。 :)

答案 1 :(得分:0)

据我所知,到目前为止,您一直在使用Laravel为您呈现HTML。现在,您希望将HTML / JS站点托管在其他计算机上,并通过API从Laravel获取所有动态值。

如果是这种情况,那么你确实需要自己实现所有的动态功能,这是相当大的工作。

您也可以使用相同的laravel应用程序,并让它在站点的一部分中为您的静态HTML / JS提供服务,您将通过API从后端调用值并保留站点的其他部分&#34; normal&#34;在哪里让Laravel呈现不需要API来获取其动态值的HTML。

答案 2 :(得分:0)

这个答案从评论开始,然后转到答案..

如果你正在使用角度,最好的方法是将模板保留在角度应用程序上并从api获取数据。在您的情况下,Laravel将成为您的API。

您将使用身份验证方法(如JWT(JSON Web令牌))通过API对服务器进行身份验证和获取数据。这在Laravel上很容易做到。

所有数据都将作为json接收,并且可以使用angular在客户端浏览器上轻松呈现到模板。你不需要jQuery,你可以使用Angular指令进行bootstrap(angular-strap)。

我没有检查这个主题。但如果它不是使用angular指令编写的,那么使用客户端模板渲染数据将很难。