有以下问题。
考虑我们有以下 HTML 代码:
<div id="container" ng-controller="Controller">
<my-tag ng-model="values"></my-tag>
</div>
以及以下控制器:
var Controller = myApp.controller("Controller", function ($scope, $http, $filter, $q) {
$scope.values = [];
$http.get(someURLHere).then(function(response) {
var data = JSON.parse(response.data);
$scope.values = data;
});
/* And so on ... */
});
这是指令声明:
myTag.directive('myTag', function() {
return {
require: "^ngModel",
restrict: "E",
replace: true,
scope: {
ngModel : "=",
},
controller: ['$scope', '$filter', myTagController],
templateUrl: /* Here is a path to my template*/,
link: function (scope, elem, attrs, ctrl) {
scope.data = scope.ngModel;
}
}
});
标签“my-tag”是我的自定义指令。它通过 ng-model 获取一些数据并渲染它们。这ng-controller="Controller"
是一些使用 AJAX 检索一些数据的函数,它假设将它们写入$scope.values
. 之后,我希望它们将被发送到my-tag
via ng-model="values"
。接下来,假设要在 HTML 页面上呈现数据。但他们没有!我确实相信我的数据已在 中正确检索Controller
,但在 中更新 ng-model 时出现问题my-tag
。将已检索Controller
到的数据“发送”到我的自定义指令的 ng-model 的最佳方法是什么?