programing

유형 스크립트의 다른 파일에서 함수를 선언하려면 어떻게 해야 합니까?

sourcejob 2023. 6. 18. 13:07
반응형

유형 스크립트의 다른 파일에서 함수를 선언하려면 어떻게 해야 합니까?

파일에는 다음과 같은 기능이 있습니다.

function alertWin(title, message) {
   .......
   .......
}

다른 형식의 스크립트 파일에는 다음이 있습니다.

function mvcOnFailure(message) {
    "use strict";
    alertWin("Internal Application Error", message);
}

현재 범위에 "Alertwin"이 없다는 오류가 발생합니다.

이 문제를 해결하는 방법은 다른 파일에서 이 함수를 정의한 후 참조하는 것입니까?그렇다면 정의는 어떻게 보입니까?

이렇게 할 수 있습니다(제목과 메시지가 모두 문자열이라고 가정).

interface alertWinInterface{
    (title:string, message: string):any;
}

declare var alertWin: alertWinInterface;

이 파일을 동일한 파일에 넣거나 가져온 별도의 주변 정의 파일(.d.ts)에 넣을 수 있습니다.

/// <reference path="myDefinitions.d.ts" />

또는 실제 기능 정의가 있는 다른 파일을 가져오기만 하면 정적 타이핑 지원을 받을 수 없습니다.

이 접근 방식은 저에게 효과가 있는 것 같습니다.

declare function alertWin(title: string, message: string) : void;

Matt의 솔루션과 마찬가지로 정의 파일에 저장하고 참조합니다.

파일의 맨 위에 참조를 추가하여 도구와 컴파일러에 기능을 찾을 위치를 알려주기만 하면 됩니다.

/// <reference path="fileWithFunction.ts" />

또한 모든 매개 변수는 현재 다음과 같이 입력됩니다.any원하는 경우 명시적으로 입력할 수 있습니다.

function alertWin(title: string, message: string) : void {
   //.......
   //.......
}

언급URL : https://stackoverflow.com/questions/13087573/how-can-i-declare-a-function-from-another-file-in-typescript

반응형