Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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 如何在引导UI选项卡中插入自定义指令_Javascript_Angularjs_Angularjs Directive - Fatal编程技术网

Javascript 如何在引导UI选项卡中插入自定义指令

Javascript 如何在引导UI选项卡中插入自定义指令,javascript,angularjs,angularjs-directive,Javascript,Angularjs,Angularjs Directive,根据,我能够成功地将一个指令插入另一个指令。但是现在,当我使用相同的方法将指令放入如下选项卡中时,我无法正确编译指令,它向我显示未知字符,比如::{“0”:{“ng339”:6},“length”:1} 请注意: 1) 我使用了来自 var myapp=angular.module('myapp',['ngAnimate','ui.bootstrap']); angular.module('myapp') .controller('myCtrl',['$scope','$compile',函数

根据,我能够成功地将一个指令插入另一个指令。但是现在,当我使用相同的方法将指令放入如下选项卡中时,我无法正确编译指令,它向我显示未知字符,比如::
{“0”:{“ng339”:6},“length”:1}

请注意: 1) 我使用了来自

var myapp=angular.module('myapp',['ngAnimate','ui.bootstrap']);
angular.module('myapp')
.controller('myCtrl',['$scope','$compile',函数($scope,$compile){
$scope.tabs=[
{title:'Dynamic title 1',内容:''},
{标题:'Dynamic title 2',内容:'Dynamic content 2'}
];
var compileTabs=函数(){
var ele=$compile($scope.tabs[0].content)($scope);
$scope.tabs[0]。内容=ele;
};
compileTabs();
$scope.model={
名称:“选项卡”
};
}]);
angular.module('myapp').directive('firstDirective',['$compile',function($compile){
返回{
templateUrl:'./directions/firstdirective.html',
范围:{
},
控制器:功能($scope){
$scope.firstCtrl=function()
{
log('我在第一个Ctrl');
}
}}]);

AngularJS:UI路由器快速启动
{{tab.content}

我想您忘记了服务的定义

你的代码
$window
$compile
将是
未定义的

正确代码
很抱歉,我没有更新问题,请现在检查,我正确地注入了服务。然后,compile正在编译成一些“未知字符”,如:{“0”:{“ng339”:6},“length”:1}选项卡内容不正确。应该是@sdfacre。很抱歉,这是打字错误,当我在stackoverflow上编写代码时,它不匹配。我正在更新代码,但请注意,同样,我只得到未知字符的结果。明白了。我不确定您为什么要这样做,但当您手动编译指令时,结果是一个对象,这就是内容显示为对象的原因。如果确实要这样做,请尝试$scope.tabs[0]。content=ele.html();。另外,请注意,如果这样做,实际上是提取指令的html内容并将其放在tab下,因此它将只是一些静态html。
.controller('myCtrl',['$compile', function ($scope, $window, $compile) {
.controller('myCtrl',['$scope', '$window', '$compile', function ($scope, $window, $compile) {