【问题标题】:Does Angularjs support with in template?Angularjs 是否支持 in 模板?
【发布时间】:2017-10-01 16:08:04
【问题描述】:

如果我有 $scope.data={"user" {"firstname":test"}},我希望有类似的模板

{% 有数据 %} 用户名为 {{ user.firstname }}

{% with data.user %} 用户名为 {{ firstname }}

类似的东西,但我找不到。我认为总是使用像 {{ data.user.firstname }}

这样的完整路径并不理想

有什么想法吗?

【问题讨论】:

    标签: angularjs angularjs-templates


    【解决方案1】:

    据我所知 AngularJS 不支持,那就是 python。我认为访问没有问题:

    {{ data.user.firstname }} 
    

    在您的模板中。如果你不喜欢那个“数据”。你为什么不直接分配:

    let data={ user: { firstname: "test"} };   
    $scope.user = data.user;
    

    然后你就可以在你的模板中使用了:

    {{ user.firstname }}
    

    您可以使用的另一件事是指令 - 设置您自己的自定义指令并通过绑定传递您想要的值,该绑定将为您提供所需的 $scope 属性。所以在 HTML 中你可以这样做:

    <some-directive user="data.user" />
    

    然后在指令中(假设您将模块存储在变量app中):

    app.directive('someDirective', function() {
      return {
        scope: {
          user: '='
        },
        template: 'Name: {{user.firstname}}'
      };
    });
    

    关于指令的更多信息:https://docs.angularjs.org/guide/directive

    【讨论】:

      猜你喜欢
      • 2012-08-16
      • 1970-01-01
      • 1970-01-01
      • 2020-10-03
      • 2014-11-29
      • 1970-01-01
      • 2022-06-29
      • 1970-01-01
      • 2015-12-30
      相关资源
      最近更新 更多