Tyyppiapuohjelmat

TypeUtils on joukko funktioita ja luokkia, jotka laajentavat Power BI:n visualisointien perustyyppejä.

Asennus

Asenna paketti suorittamalla seuraava komento hakemistossa, joka sisältää nykyisen mukautetun visualisoinnin:

npm install powerbi-visuals-utils-typeutils --save

Tämä komento asentaa paketin ja lisää paketin riippuvuutena tiedostoosi package.json .

Kaksinkertainen

- Double moduuli tarjoaa mahdollisuudet käsitellä lukujen tarkkuutta.

Se tarjoaa seuraavat funktiot:

pow10

Tämä funktio palauttaa potenssin 10.

function pow10(exp: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.pow10(25);

// returns: 1e+25

log10

Tämä funktio palauttaa luvun 10-kantaisen logaritmin.

function log10(val: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.log10(25);

// returns: 1

getPrecision

Tämä funktio palauttaa luvun tarkkuutta edustavan potenssin 10.

function getPrecision(x: number, decimalDigits?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.getPrecision(562344, 6);

// returns: 0.1

equalWithPrecision

Tämä funktio tarkistaa, onko kahden luvun välinen delta pienempi kuin annettu tarkkuus.

function equalWithPrecision(x: number, y: number, precision?: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.equalWithPrecision(1, 1.005, 0.01);

// returns: true

lessWithPrecision

Tämä funktio tarkistaa, onko ensimmäinen arvo pienempi kuin toinen arvo.

function lessWithPrecision(x: number, y: number, precision?: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.lessWithPrecision(0.995, 1, 0.001);

// returns: true

lessOrEqualWithPrecision

Tämä funktio tarkistaa, onko ensimmäinen arvo pienempi tai yhtä suuri kuin toinen arvo.

function lessOrEqualWithPrecision(x: number, y: number, precision?: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.lessOrEqualWithPrecision(1.005, 1, 0.01);

// returns: true

greaterWithPrecision

Tämä funktio tarkistaa, onko ensimmäinen arvo suurempi kuin toinen arvo.

function greaterWithPrecision(x: number, y: number, precision?: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.greaterWithPrecision(1, 0.995, 0.01);

// returns: false

greaterOrEqualWithPrecision

Tämä funktio tarkistaa, onko ensimmäinen arvo suurempi tai yhtä suuri kuin toinen arvo.

function greaterOrEqualWithPrecision(x: number, y: number, precision?: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.greaterOrEqualWithPrecision(1, 1.005, 0.01);

// returns: true

floorWithPrecision

Tämä funktio määrittää luvun lattian annetulla tarkkuudella.

function floorWithPrecision(x: number, precision?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.floorWithPrecision(5.96, 0.001);

// returns: 5

ceilWithPrecision

Tämä funktio määrittää ceils luvun annetulla tarkkuudella.

function ceilWithPrecision(x: number, precision?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.ceilWithPrecision(5.06, 0.001);

// returns: 6

floorToPrecision

Tämä funktio määrittää luvun lattian annettuun tarkkuuteen.

function floorToPrecision(x: number, precision?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.floorToPrecision(5.96, 0.1);

// returns: 5.9

ceilToPrecision

Tämä funktio määrittää ceils luvun annettuun tarkkuuteen.

function ceilToPrecision(x: number, precision?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.ceilToPrecision(-506, 10);

// returns: -500

roundToPrecision

Tämä funktio pyöristää luvun annettuun tarkkuuteen.

function roundToPrecision(x: number, precision?: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.roundToPrecision(596, 10);

// returns: 600

varmista, ettäInRange

Tämä funktio palauttaa luvun, joka on minimin ja maksimin välillä.

function ensureInRange(x: number, min: number, max: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.ensureInRange(-27.2, -10, -5);

// returns: -10

round

Tämä funktio pyöristää luvun.

function round(x: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.round(27.45);

// returns: 27

removeDecimalNoise

Tämä funktio pyöristää luvun ja poistaa joitakin desimaalitiloja.

function removeDecimalNoise(value: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.removeDecimalNoise(21.493000000000002);

// returns: 21.493

isInteger

Tämä funktio tarkistaa, onko luku kokonaisluku.

function isInteger(value: number): boolean;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.isInteger(21.493000000000002);

// returns: false

lisäämiseen

Tämä funktio kasvattaa lukua annetulla luvulla ja palauttaa pyöristetun luvun.

function toIncrement(value: number, increment: number): number;

Esimerkki:

import { double } from "powerbi-visuals-utils-typeutils";
// ...

double.toIncrement(0.6383723, 0.05);

// returns: 0.65

Prototyyppi

- Prototype moduuli tarjoaa mahdollisuuden periä objekteja.

Se tarjoaa seuraavat funktiot:

periä

Tämä funktio palauttaa uuden objektin, jonka prototyyppinä on annettu objekti.

function inherit<T>(obj: T, extension?: (inherited: T) => void): T;

Esimerkki:

import { prototype } from "powerbi-visuals-utils-typeutils";
// ...

let base = { Microsoft: "Power BI" };

prototype.inherit(base);

/* returns: {
    __proto__: {
        Microsoft: "Power BI"
    }
}*/

inheritSingle

Tämä funktio palauttaa uuden objektin, jossa annettu objekti on sen prototyyppinä, jos prototyyppiä ei ole määritetty.

function inheritSingle<T>(obj: T): T;

Esimerkki:

import { prototype } from "powerbi-visuals-utils-typeutils";
// ...

let base = { Microsoft: "Power BI" };

prototype.inheritSingle(base);

/* returns: {
    __proto__: {
        Microsoft: "Power BI"
    }
}*/

Kuvapistemuunnin

- PixelConverter moduuli tarjoaa mahdollisuuden muuntaa kuvapisteet pisteiksi ja pisteet kuvapisteiksi.

Se tarjoaa seuraavat funktiot:

toString

Tämä funktio muuntaa kuvapistearvon merkkijonoksi.

function toString(px: number): string;

Esimerkki:

import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...

pixelConverter.toString(25);

// returns: 25px

fromPoint

Tämä funktio muuntaa annetun pistearvon kuvapistearvoksi ja palauttaa merkkijonotulkinnan.

function fromPoint(pt: number): string;

Esimerkki:

import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...

pixelConverter.fromPoint(8);

// returns: 33.33333333333333px

fromPointToPixel

Tämä funktio muuntaa annetun pistearvon kuvapistearvoksi.

function fromPointToPixel(pt: number): number;

Esimerkki:

import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...

pixelConverter.fromPointToPixel(8);

// returns: 10.666666666666666

toPoint

Tämä funktio muuntaa kuvapistearvon pistearvoksi.

function toPoint(px: number): number;

Esimerkki:

import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...

pixelConverter.toPoint(8);

// returns: 6