加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJS – 将值从后端传递到前端

发布时间:2020-12-17 08:31:11 所属栏目:安全 来源:网络整理
导读:将值从后端传递到前端的AngularJS的最好方法是什么?我使用Django和模板能够吐出我需要的值,但我不知道什么是最好的做法传递这些值到AngularJS。 想一个博客文章及其评论,如果我有一个AngularJS服务,通过传递帖子ID到服务检索某个博客帖子的所有评论,Dja
将值从后端传递到前端的AngularJS的最好方法是什么?我使用Django和模板能够吐出我需要的值,但我不知道什么是最好的做法传递这些值到AngularJS。

想一个博客文章及其评论,如果我有一个AngularJS服务,通过传递帖子ID到服务检索某个博客帖子的所有评论,Django正在呈现HTML模板,它知道什么是帖子ID,然而我需要传递这个帖子ID到AngularJS和随后的服务。

一个想法是使其在隐藏的<输入>并将此输入分配给模型。不是很吸引人。

另一个是有一个指令,并将此属性中的值传递给此指令,这样我将能够访问此属性的值:

// Django (or any backend) is rendering {{ object.value }}
<div class="myDirective" data-object-id={{ object.value }}>
   ...
</div>

angular.module('myDirectives',[]).
    directive('myDirective',function() {
        return {
            restrict: 'C',transclude: false,link: function postLink($scope,$element,$attrs) {
                // $attrs.objectId would have the value
            }
        }
    });

这两种方法看起来很好。但我想知道是否有一个更干净的方式这样做?任何遵循AngularJS最佳实践的方法?

如果你需要从一个视图初始化一些模型值ng-init指令可能是你正在寻找: http://docs.angularjs.org/api/ng.directive:ngInit

使用它,你可以简单地写:

<div ng-init="myModel=backend-generated-value-here">
   ...
</div>

说到上面的话,你可能有一些困难的时候找到最佳实践为您的用例,因为AngularJS专注于Web2.0,全客户端Web应用程序。目前,它不能理想地与服务器端生成内容。它可能在未来版本的AngularJS中改变。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读