Přejít k navigační liště

Zdroják » PR Články » Nastavení Visual Studio Code pro Angular 2

Nastavení Visual Studio Code pro Angular 2

Články PR Články

AngularJS, potažmo Angular 2 je „vlajkovou lodí“ z dílen Google a pro mnohé možná překvapivě i částečně Microsoftu. Vzhledem k tomu, že je Angular postavený nad TypeScriptem, který je z dílny Microsoftu, pro jeho editaci se nabízí IDE stejného dodavatele. Dnes se s vámi chci podělit o nastavení a jemný úvod do vývoje Angularu pomocí Visual Studio Code (VSO).

Příprava prostředí

Visual Studio Code lze stáhnout na adrese http://code.visualstudio.com/. Pro ty z vás, kteří rádi testují insider verze, je tu pak https://code.visualstudio.com/insiders.

Samotné prostředí VSO je intuitivní a pro zájemce je na internetu spousta návodů, jak začít. Já se soustředím na samotné spojení Angular 2 a VSO. Co tedy budeme potřebovat pro vývoj?

Minimalistické příklady uvedených souborů jsou:

tsconfig.json

TS Config nastavuje TypeScript kompilátor. Reference zde: https://angular.io/docs/ts/latest/guide/typescript-configuration.html#tsconfig

{
  "compilerOptions": {
    "target": "es5",
    "module": "system",
    "moduleResolution": "node",
    "sourceMap": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": false
  },
  "exclude": [
    "node_modules",
    "typings/main",
    "typings/main.d.ts"
  ]
}

typings.json

Soubor obsahuje definici typů a namespaces, které nejsou standardní součástí Angularu.

{
  "ambientDependencies": {
    "es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim/es6-shim.d.ts#4de74cb527395c13ba20b438c3a7a419ad931f1c",
    "jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#d594ef506d1efe2fea15f8f39099d19b39436b71",
    "angular": "./typings/angularjs/angular.d.ts"
  }
}

package.json

Doplňky a knihovny jsou pak v případě Angularu stahované pomocí balíčkovacího nástroje NPM. Seznam reference je deklarován zde.

{
  "name": "angular2-quickstart",
  "version": "1.0.0",
  "scripts": {
    "start": "concurrently \"npm run tsc:w\" \"npm run lite\" ",    
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "typings": "typings",
    "postinstall": "typings install" 
  },
  "license": "ISC",
  "dependencies": {
    "angular2": "2.0.0-beta.9",
    "systemjs": "0.19.24",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.2",
    "zone.js": "0.5.15"
  },
  "devDependencies": {
    "concurrently": "^2.0.0",
    "lite-server": "^2.1.0",
    "typescript": "^1.8.7",
    "typings":"^0.7.5"
  }
}

Instalace balíčků

Nyní musíme inicializovat náš workspace a dotáhnout referencované balíčky. Pro to použijeme příkaz

npm install

Neděste se chyb, které se můžou při instalaci objevit. Většinu z nich by NPM měl zvládnout opravit.

Jako další musíme dotáhnout definiční soubory pro Angular FW.

npm install tsd -g
tsd guery -r -o -a install angular jquery

Tím se dotáhnou definiční soubory,  jeden z nich jsme referencovali v typings.json.

Konfigurace VSC

Pro spouštění a debugging projektu ve VSC potřebujeme nastavit parametry debuggeru a build procesu. První z nich lze „naklikat“ přímo ve VSO. V debug záložce vybereme nastavení a pak následně template pro debugging node.js projektu.

image00

To vytvoří v projektu soubor launch.json. V něm pak změníme, jaký proces se má spustit v případě debuggingu, viz následující konfigurace.

{
 "version": "0.2.0",
 "configurations": [
  {
   "name": "Launch",
   "type": "node",
   "request": "launch",
   "program": "${workspaceRoot}/node_modules/lite-server/bin/lite-server",
   "stopOnEntry": false,

Pro build pak musíme vytvořit soubor tasks.json, kde specifikujeme, které .ts soubory se mají kompilovat. Příklad nastavení je zde.

{
 "version": "0.1.0",
 "command": "tsc",
 "isShellCommand": true,
 "showOutput": "silent",
 "args": ["./app/app.component.ts"],
 "problemMatcher": "$tsc"
}

Poté už můžeme projekt spustit a debugovat přímo s prostředí VSO.

Celý demo projekt včetně veškerého nastavení (bez knihoven) můžete stáhnout zde.

Hledáte-li kompletní prostředí pro agilní řízení vašeho projektu, správu zdrojových kódů git/tfvc, správu testování i DevOps, nezapomeňte si vyzkoušet Visual Studio Team Service. Je nezávislé na IDE, podporuje propojení s technologiemi třetích stran a pro malé týmy je zdarma.

V Microsoft Virtual Academy najdete následující výukové kurzy k tématu:

Proč vám model napíše Python, i když jste si řekli o Rust

AI
Komentáře: 0
Výkonnostní propast mezi Pythonem a ostatními jazyky se za poslední rok a půl skoro zavřela. Dnešní modely zvládají Rust i Go srovnatelně dobře. Když jim ale volbu necháte, sáhnou stejně po Pythonu. A u knihoven je to ještě výraznější: mezi funkčně srovnatelnými balíčky je až 84procentní rozdíl v kvalitě generovaného kódu. Proč to tak je a co s tím.

WP2Shell: Kritická hrozba pro samotné jádro WordPressu. Útočníci mohou získat kontrolu nad webem

Zranitelnost ve WordPressu není žádná novinka. Kdo provozuje weby postavené na této platformě, ví, že bezpečnostní záplaty chodí prakticky pořád. O to větší pozornost by měla vzbudit chyba, u které nic z toho neplatí. A přesně takový je případ zranitelnosti, která dostala přezdívku wp2shell. potřeb. Zranitelný kontaktní formulář, děravý e-shopový plugin, opomenutá kontrola oprávnění v nějaké obskurní rozšiřující knihovně – to je denní chleba každého, kdo sleduje bezpečnostní feedy. Zpráva „nová chyba ve WordPress pluginu“ má tak nízkou informační hodnotu, že ji většina lidí přejde bez mrknutí oka.

Mýtus jedné aplikace: proč PWA nenahradí vývoj pro každou platformu

PWA mohou webu přidat ikonu na ploše, fungování bez připojení, notifikace a některé systémové funkce. Nejsou ale cestou k jednomu klientu pro všechny platformy. Vyplatí se tam, kde se lidé k webu vracejí a ocení okamžitý vstup z odkazu. Jakmile aplikace musí spolehlivě běžet na pozadí nebo fungovat stejně na každém zařízení, bývá vhodnější nativní řešení.