小编ElS*_*keO的帖子

调用组件函数时,self.context不是Angular2中的函数

我想在实例化一个angular2组件时调用一个函数,但是我得到以下错误:TypeError:self.context.dummyFunc不是函数

以下是一个人为的例子,但会告诉你我的问题.假设我们有以下组件:

import { Component } from '@angular/core';

    @Component({
      selector: 'myItem',
      template: `<div>This will work->{{dummyFunc()}}</div>`,
    })
    export class myItemComponent {
      constructor() { }

      dummyFunc() :string {
        return "bold";
      }
    }
Run Code Online (Sandbox Code Playgroud)

以下HTML:

<ul myItem [ngClass]='dummyFunc()'></ul>

将生成以下异常:

TypeError:self.context.dummyFunc不是函数

如果我将HTML更改为:

<ul myItem></ul>

该组件运行并能够调用其中的dummyFunc函数 <div>

我假设在组件myItem的上下文中没有调用dummyFunc(),而是实例化myItem的组件.

我的问题.在实例化组件时,在刚刚创建的组件上调用函数的正确方法是什么?

components angular

7
推荐指数
1
解决办法
3万
查看次数

将图像分割成较小图像的算法减少了空白量并指定了最大量的矩形

我正在寻找一种算法,可以将图像分割成较小的图像,但有一些约束.一个约束是使用最少量的"空白"意味着空像素.另一种是指定最大数量的图像以将其分割成.

例如,让我们看下面的图像.其中有很多"空白".我想将这些图像分成几个其他图像,这样我可以减少这个图像占用的内存量,并减少这个图像所需的"绘图"量.

.=transparent pixel
x=colored pixel

....................
.xxxxxxxxxxx........
...xxxx...xxxxxx....
.............xxxxx..
...............xxx..
...............xxx..
....................
..xxxxxx............
.....xxxxxxxxxxx....
.........xxxxxxxxxx.
....................
Run Code Online (Sandbox Code Playgroud)

假设我想将图像分成最多4个图像,可能的溶剂如下图所示.

....................
.111111111111111....
.111111111111111....
.............22222..
.............22222.
.............22222..
....................
..3333333...........
..33333334444444444.
.........4444444444.
....................
Run Code Online (Sandbox Code Playgroud)

有没有人有这个算法,或知道这样做的算法的名称?我一直在寻找并找到一些相关的算法,但我发现的算法没有考虑到空白,例如他们将图像分成仅覆盖非透明像素的矩形,从而产生大量的矩形.我正在使用的真实数据是1024*1024像素的图像,我宁愿将它们减少到最多16个部分.诀窍是使用最少量的空白提取16个图像.

algorithm image rectangles

6
推荐指数
1
解决办法
2191
查看次数

标签 统计

algorithm ×1

angular ×1

components ×1

image ×1

rectangles ×1