คำถามติดแท็ก typescript

TypeScript เป็น superset ที่พิมพ์โดยสแตติกของ JavaScript ที่สร้างโดย Microsoft ซึ่งเพิ่มประเภทตัวเลือกคลาสอินเทอร์เฟซ enums generics async / await และคุณสมบัติอื่น ๆ มากมายและคอมไพล์ให้กับ JavaScript ธรรมดา แท็กนี้มีไว้สำหรับคำถามเฉพาะของ TypeScript ไม่ได้ใช้สำหรับคำถาม JavaScript ทั่วไป

24
ฉันจะส่งวัตถุ JSON ไปยังคลาส typescript ได้อย่างไร
ฉันอ่านวัตถุ JSON จากเซิร์ฟเวอร์ REST ระยะไกล วัตถุ JSON นี้มีคุณสมบัติทั้งหมดของคลาส typescript (โดยการออกแบบ) ฉันจะส่งวัตถุที่ได้รับ JSON ไปยังประเภท var ได้อย่างไร ฉันไม่ต้องการเติม var typescript (เช่นมีนวกรรมิกที่ใช้วัตถุ JSON นี้) มันมีขนาดใหญ่และการคัดลอกทุกสิ่งในวัตถุย่อยโดยวัตถุย่อยและทรัพย์สินตามคุณสมบัติจะใช้เวลานาน อัปเดต:อย่างไรก็ตามคุณสามารถส่งไปยังอินเตอร์เฟสของ typescript ได้!
393 json  typescript 

21
มีวิธีการตรวจสอบทั้ง "โมฆะ" และ "ไม่ได้กำหนด" หรือไม่?
เนื่องจาก TypeScript ถูกพิมพ์อย่างรุนแรงเพียงใช้if () {}เพื่อตรวจสอบnullและundefinedฟังดูไม่ถูกต้อง TypeScript มีฟังก์ชั่นเฉพาะหรือไวยากรณ์สำหรับเรื่องนี้หรือไม่?

11
ฉันจะรับตัวเลือกใหม่ใน "เลือก" ใน Angular 2 ได้อย่างไร
ฉันใช้ Angular 2 (TypeScript) ฉันต้องการทำบางสิ่งกับตัวเลือกใหม่ แต่สิ่งที่ฉันได้รับonChange()คือตัวเลือกสุดท้ายเสมอ ฉันจะรับตัวเลือกใหม่ได้อย่างไร <select [(ngModel)]="selectedDevice" (change)="onChange($event)"> <option *ngFor="#i of devices">{{i}}</option> </select> onChange($event) { console.log(this.selectedDevice); // I want to do something here with the new selectedDevice, but what I // get here is always the last selection, not the one I just selected. }

23
ฉันจะกำหนดคุณสมบัติให้กับวัตถุใน TypeScript แบบไดนามิกได้อย่างไร
หากฉันต้องการกำหนดคุณสมบัติให้กับวัตถุใน Javascript โดยทางโปรแกรมฉันจะทำเช่นนี้: var obj = {}; obj.prop = "value"; แต่ใน TypeScript สิ่งนี้จะสร้างข้อผิดพลาด: คุณสมบัติ 'prop' ไม่มีอยู่ในค่าประเภท '{}' ฉันควรจะกำหนดคุณสมบัติใหม่ให้กับวัตถุใน TypeScript อย่างไร
359 typescript 

4
ไม่สามารถผูกกับ 'formControl' ได้เนื่องจากไม่ใช่คุณสมบัติที่รู้จักของ 'อินพุต' - ปัญหาการเติมข้อความอัตโนมัติของวัสดุ Angular2
ฉันกำลังพยายามใช้ส่วนประกอบการเติมข้อความอัตโนมัติของ Angular ในโครงการ Angular 2 ของฉัน ฉันเพิ่มสิ่งต่อไปนี้ในแม่แบบของฉัน <md-input-container> <input mdInput placeholder="Category" [mdAutocomplete]="auto" [formControl]="stateCtrl"> </md-input-container> <md-autocomplete #auto="mdAutocomplete"> <md-option *ngFor="let state of filteredStates | async" [value]="state"> {{ state }} </md-option> </md-autocomplete> ต่อไปนี้เป็นองค์ประกอบของฉัน import {Component, OnInit} from "@angular/core"; import {ActivatedRoute, Router} from "@angular/router"; import {FormControl} from "@angular/forms"; @Component({ templateUrl: './edit_item.component.html', styleUrls: ['./edit_item.component.scss'] }) …

9
พิมพ์คำจำกัดความในวัตถุตามตัวอักษรใน TypeScript
ในคลาส typescript เป็นไปได้ที่จะประกาศประเภทของคุณสมบัติเช่น: class className { property: string; }; ประกาศประเภทของคุณสมบัติในวัตถุตามตัวอักษรได้อย่างไร ฉันลองใช้รหัสต่อไปนี้แล้ว แต่ไม่ได้คอมไพล์: var obj = { property: string; }; ฉันได้รับข้อผิดพลาดต่อไปนี้: ชื่อ 'สตริง' ไม่มีอยู่ในขอบเขตปัจจุบัน ฉันกำลังทำสิ่งผิดปกติหรือเป็นข้อผิดพลาดหรือไม่?
346 typescript 

6
เกี่ยวกับ“ * .d.ts” ใน TypeScript
ฉันรู้สึกอยากรู้อยากเห็น*.d.tsเพราะฉันเป็นมือใหม่ใน TypeScript และมีคนบอกฉันว่าไฟล์ประเภทนี้คล้ายกับ "head file" ใน C ++ แต่สำหรับ JS เท่านั้น แต่ผมไม่สามารถแปลงไฟล์ JS บริสุทธิ์เพื่อ*.d.tsไฟล์จนกว่าฉัน forcely เปลี่ยนไป*.js *.tsดังนั้นฉันมีสามไฟล์: ไฟล์ JS, ไฟล์ TS และ*.d.tsไฟล์ ความสัมพันธ์ระหว่างพวกเขาคืออะไร? ฉันจะใช้*.d.tsไฟล์ได้อย่างไร หมายความว่าฉันสามารถลบ*.tsไฟล์อย่างถาวรได้หรือไม่ ถ้าเป็นเช่นนั้น*.d.tsไฟล์จะรู้ได้อย่างไรว่าไฟล์ JS ใดทำการแมปกับตัวเอง? มันคงจะดีมากถ้ามีคนยกตัวอย่างให้ฉัน
343 typescript  .d.ts 

7
TypeScript Objects เป็นพจนานุกรมประเภทเช่นเดียวกับใน C #
ฉันมีรหัสจาวาสคริปต์ที่ใช้วัตถุเป็นพจนานุกรม ตัวอย่างเช่นวัตถุ 'person' จะเก็บรายละเอียดส่วนตัวบางอย่างที่อยู่อีเมล var people = {<email> : <'some personal data'>}; adding > "people[<email>] = <data>;" getting > "var data = people[<email>];" deleting > "delete people[<email>];" เป็นไปได้ไหมที่จะอธิบายเรื่องนี้ใน typescript หรือฉันต้องใช้อาร์เรย์?

14
typescript สนับสนุนหรือไม่. ผู้ประกอบการ? (และมันเรียกว่าอะไร)
typescript ปัจจุบันหรือไม่ (หรือมีแผนจะ) สนับสนุนผู้ประกอบการนำทางที่ปลอดภัยของ?. เช่น: var thing = foo?.bar // same as: var thing = (foo) ? foo.bar : null; นอกจากนี้ยังมีชื่อสามัญเพิ่มเติมสำหรับผู้ให้บริการนี้ (มันยากที่ Google จะหายาก)
336 typescript 

18
Angular ไม่มีผู้ให้บริการสำหรับ NameService
ฉันมีปัญหาในการโหลดคลาสลงในคอมโพเนนต์ Angular ฉันพยายามแก้ไขมันมาเป็นเวลานาน ฉันได้ลองรวมทั้งหมดในไฟล์เดียว สิ่งที่ฉันมีคือ: Application.ts /// <reference path="../typings/angular2/angular2.d.ts" /> import {Component,View,bootstrap,NgFor} from "angular2/angular2"; import {NameService} from "./services/NameService"; @Component({ selector:'my-app', injectables: [NameService] }) @View({ template:'<h1>Hi {{name}}</h1>' + '<p>Friends</p>' + '<ul>' + ' <li *ng-for="#name of names">{{name}}</li>' + '</ul>', directives:[NgFor] }) class MyAppComponent { name:string; names:Array<string>; constructor(nameService:NameService) { this.name = 'Michal'; …

4
(เปลี่ยน) vs (ngModelChange) เป็นมุม
Angular 1 ไม่ยอมรับonchange()กิจกรรม แต่ยอมรับเฉพาะng-change()กิจกรรม ในทางกลับกัน 2 ยอมรับทั้งสอง(change)และ(ngModelChange)เหตุการณ์ซึ่งทั้งสองดูเหมือนจะทำสิ่งเดียวกัน ความแตกต่างคืออะไร? อันไหนดีที่สุดสำหรับประสิทธิภาพ? ngModelChange : <input type="text" pInputText class="ui-widget ui-text" (ngModelChange)="clearFilter()" placeholder="Find"/> เทียบกับการเปลี่ยนแปลง : <input type="text" pInputText class="ui-widget ui-text" (change)="clearFilter()" placeholder="Find"/>

12
ซ่อนไฟล์. js.map ใน Visual Studio Code
ฉันกำลังทำงานกับโปรเจ็กต์ typescript ในรหัส Visual Studio และต้องการซ่อนไฟล์.js.map(และอาจเป็น.js) ไฟล์ไม่ให้ปรากฏใน file explorer เป็นไปได้หรือไม่ที่จะแสดงเฉพาะ.tsไฟล์ใน file explorer?


10
ฉันจะสร้างวัตถุตามข้อกำหนดของไฟล์อินเตอร์เฟสใน TypeScript ได้อย่างไร
ฉันได้กำหนดอินเทอร์เฟซเช่นนี้: interface IModal { content: string; form: string; href: string; $form: JQuery; $message: JQuery; $modal: JQuery; $submits: JQuery; } ฉันกำหนดตัวแปรเช่นนี้ var modal: IModal; อย่างไรก็ตามเมื่อฉันพยายามที่จะตั้งค่าคุณสมบัติของคำกริยามันทำให้ฉันมีข้อความบอกว่า "cannot set property content of undefined" การใช้อินเทอร์เฟซเพื่ออธิบายวัตถุโมดอลของฉันเป็นเรื่องถูกต้องหรือไม่
313 typescript 

7
typescript: วิธีกำหนดประเภทสำหรับการเรียกฟังก์ชัน (เป็นฟังก์ชันประเภทใดก็ได้, ไม่ใช่ Universal ใด ๆ ) ที่ใช้ในพารามิเตอร์ method
ขณะนี้ฉันมีคำจำกัดความประเภทเป็น: interface Param { title: string; callback: any; } ฉันต้องการบางสิ่งเช่น: interface Param { title: string; callback: function; } แต่คนที่สองไม่ได้รับการยอมรับ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.