我正在使用自定义指令在Ionic 1中构建一个应用程序。这些在浏览器中进行测试时有效,但不会出现在模拟器或iPhone上。我已经看到这对其他人来说是一个问题,但没有一个建议对我有用。有没有关于如何使自定义指令出现在模拟器中(或者更重要的是,在iPhone上)的建议?
这是我尝试过的。这些都没有奏效。
<div my-directive></div>
而不是<my-directive></my-directive>
display: block
添加到我的元素指令<ion-view><ion-content>
标签,然后在父模板中的指令周围的模板之外添加angular.module('starter.directives', [])
.directive('grid', function(GridFactory){
return {
restrict: 'AE',
templateUrl: '/templates/grid.html',
link: function(scope){
//does stuff
}
}
})
.directive('cell', function(){
return {
restrict: 'AE',
templateUrl: '/templates/cell.html',
scope: {
marker: '=',
isAlive: '=',
cellClick: '&'
}
}
})
标签。 以下是必不可少的代码:
指令
<div class="row" ng-repeat="row in grid" style="height: 5vw" >
<div class="col gc-border gc-no-padding" ng-repeat="cell in row">
<cell is-alive=isAlive(cell.marker) marker=cell.marker neighbors = cell.neighbors cell-click=cellClick(cell)></cell>
</div>
</div>
指令模板
格
<ion-view view-title="Play">
<ion-content>
<div class="card">
<p>It rebuilt 2!</p>
<grid></grid>
</div>
<div class="button-bar">
<a class="button button-calm" on-tap="step()">Step</a>
<a class="button button-calm" on-tap="play()">{{isPlaying ? "Pause" : "Play" }}</a>
<a class="button button-calm" on-tap="clear()">Clear</a>
</div>
</ion-content>
</ion-view>
细胞
父模板
public static BufferedImage IplImageToBufferedImage(IplImage src) {
OpenCVFrameConverter.ToIplImage grabberConverter = new OpenCVFrameConverter.ToIplImage();
Java2DFrameConverter paintConverter = new Java2DFrameConverter();
Frame frame = grabberConverter.convert(src);
return paintConverter.getBufferedImage(frame,1);
}
答案 0 :(得分:1)
对于指令中的templateUrl,您有以下内容:
.directive('grid', function(GridFactory){
return {
restrict: 'E',
templateUrl: '/templates/grid.html',
link: function(scope){
scope.grid = GridFactory.makeGrid(20,20);
scope.alive = [];
...
删除正斜杠:
templateUrl: '/templates/grid.html',
到
templateUrl: 'templates/grid.html',
以及templateUrl
的剩余部分。