繁体   English   中英

如何在Angular.Js中封装$ scope

[英]How to encapsulate $scope in Angular.Js

我有一个模式,我想使用两次,但是值不同。 例如:

 .directive("day", function($scope){
     return {
        template: '<div>{{day}}</div>'
        }
    }

我可以在另外两个指令中使用它,但封装“ day”以查看结果:

    <div>1</div>
    <div>2</div>

特别是如果我想保持所有“一天”的有约束力的价值

所需的称为“隔离”作用域,您可以将指令的属性从本地“隔离”作用域绑定到父作用域。

app.directive('day', function(){
  return {
    scope: {
      day: '='
    },
    template: '<div>{{day}}</div>'
  }
})

HTML

    <div ng-init="day1='Thursday'; day2='Friday'">

        <div day="day1"></div>
        <div day="day2"></div>

    </div>

结果

Thursday

Friday

有关指令范围的更多信息,请参见AngularJS $ compile API Reference-scope

你的意思是这样的吗?

 app.directive('day', function(){ return { scope: { dayValue: '=' }, template: '<div>{{dayValue}}</div>' } }) app.directive('outerDirective', function(){ return { link: function($scope){ $scope.days = [1,2,3]; }, template: '<day day-value="day" ng-repeat="day in days"></day>' } }) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM