我正在玩Angular,並試圖瞭解有關範圍的更多信息。角度隔離作用域調用父函數
var app = angular.module('myapp', []);
app.controller('MainCtrl', function($scope){
$scope.color = 'green';
$scope.sayHello = function(){
console.log("HELLO FROM PARENT SCOPE");
}
});
app.directive('helloWorld', function() {
return {
restrict: 'AE',
replace: 'true',
scope: {
color: '@colorAttr',
sayHello: '&'
},
template: '<p style="background-color:{{color}}">Hello World',
link: function(scope, elem, attrs) {
scope.sayHello();
}
};
});
我想調用父類方法的sayHello(),但是當我用一個孤立的範圍,它不會讓我。我已經閱讀了一些關於在隔離範圍內使用&的內容,但不確定我是否正確使用它。
HTML
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" ng-app="myapp">
<head>
</head>
<body ng-controller="MainCtrl">
<div ng-model="color"/>
<hello-world color-attr="{{color}}">Replaced</hello-world>
</body>
</html>
向我們展示你的HTML太 – Mosho