一、引入模块类

不仅要引入模块.js还要在初始模块时声明依赖关系

factory中定义服务时不能引用$scope,只能引用$rootScope,否则会报 Unknown provider: $scopeProvider <- $scope <- myService

二、独立作用域类

在html中如果用驼峰式写法会导致js文件中无法识别

如<div myName="{{name}}"></div>用在@的独立作用域中myName获取数据,将无法识别

正确写法是应避免在html文档中出现驼峰式写法:<div my-name="{{name}}"></div>或者用将其转换为小写myname

 

注意=与@获取数据时的差别

<div ng-controller="myController">
    <my-include my-name="name">
            
    </my-include>
</div>
bookStoreApp.controller('myController',['$scope',function($scope){
    $scope.name='init';
}]);
bookStoreApp.directive('myInclude',function(){
    return {
        scope:{
            myName:'='
        },
        restrict:'AE',
        template:'<div><input type="text" ng-model="myName">{{myName}}</div>'
    }
})

 

<div ng-controller="myController">
<my-include my-name="{{name}}">//注意此处与上面的不同

</my-include>
</div>

bookStoreApp.controller('myController',['$scope',function($scope){
    $scope.name='init';
}]);
bookStoreApp.directive('myInclude',function(){
    return {
        scope:{
            myName:'@'
        },
        restrict:'AE',
        template:'<div><input type="text" ng-model="myName">{{myName}}</div>'
    }
})