的index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Example - example-example11-production</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.0-rc.2/angular.min.js"></script>
<script src="script.js"></script>
</head>
<body ng-app="docsSimpleDirective">
<div ng-controller="Controller">
<div my-customer></div>
</div>
</body>
</html>
的script.js
(function(angular) {
'use strict';
angular.module('docsSimpleDirective', [])
.controller('Controller', ['$scope', function($scope) {
$scope.customer = {
name: 'Naomi',
address: '1600 Amphitheatre'
};
}])
.directive('myCustomer', function() {
return {
template: 'Name: {{customer.name}} Address: {{customer.address}}'
};
});
})(window.angular);
我希望将值传递给指令并基于键想要从控制器方法中检索值。
在此处传递值<div my-customer="FirstName"></div>
FirstName
是想要将它传递给指令并从控制器方法获取FirstName
值的关键。
我怎么能实现这个?任何类似的线程?
答案 0 :(得分:3)
要将值传递给自定义指令,您需要在指令中指定它。
locationManager:didExitRegion
现在你可以:
.directive('myCustomer', function() {
return {
scope: {
myvariable: "="
},
template: 'Name: {{myvariable.name}} Address: {{myvariable.address}}'
};
});
传递值的方法有很多种。您可以使用<!-- customer is an object from your controller -->
<div my-customer myvariable="customer"></div>
,@
和=
。他们都工作不同。请阅读此great SO post regarding all the types of bindings。
请记住,&
表示绑定是双向的。它是对父作用域的变量的引用。换句话说,当您更改指令中的变量时,它也将在父作用域中更改。