Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带有承诺的自定义指令不起作用_Javascript_Angularjs_Ionic Framework - Fatal编程技术网

Javascript 带有承诺的自定义指令不起作用

Javascript 带有承诺的自定义指令不起作用,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,我正在尝试基于以下内容构建一个指令。我尝试定义一个过滤器,结果相同 问题是,每当我使用承诺时,我总是得到{}作为值 下面的简单示例非常清楚地说明了这个问题 var-app=angular.module('plunker',[]); 应用程序控制器('MainCtrl',函数($scope){ $scope.name='World'; }); app.directive('convert',['$q',function($q){ 返回{ 模板:“{convertFunc()}}”, 链接:功能(

我正在尝试基于以下内容构建一个
指令
。我尝试定义一个
过滤器
,结果相同

问题是,每当我使用承诺时,我总是得到
{}
作为值

下面的简单示例非常清楚地说明了这个问题

var-app=angular.module('plunker',[]);
应用程序控制器('MainCtrl',函数($scope){
$scope.name='World';
});
app.directive('convert',['$q',function($q){
返回{
模板:“{convertFunc()}}”,
链接:功能(范围、要素、属性){
scope.convertFunc=函数(){
var def=$q.defer();
定义。解决(“测试”);
返回def.promise.then(函数){
返回s;//调试器不在此停止
},功能(e){
返回e;//调试器不在此停止
});
};
}
}
}]);

安古拉斯普朗克
文件。写(“”);
你好{{name}}


Hmm..你没有任何服务电话或类似的东西来在it的美丽中使用承诺吗?但是试一下“return def.promise”和“convertFunc.then(data){console.log(data)}”,在视图中返回promise不会得到任何输出。。?您希望在这里实现什么样的功能?简化示例以显示问题。实际上,我调用的不是“测试”,而是服务。但是我得到了同样的结果。@PankajParkar我想根据服务中定义的数据转换单位。在VS调试器中转换的单位是正确的,但我无法将其显示出来。行为与我的“测试”文字完全相同。我得到的结果是{}。@mlemanchzyk通过在页面上使用
convertFunc()
promise将在页面上产生更大的效果。。因为它将对每个摘要周期进行评估。这不是一个好的做法