타입스크립트 any 타입 경고 무시하기
module.exports = {
rules: {
"@typescript-eslint/no-explicit-any": "off", // 추가
},
};
Do whatever what I want
module.exports = {
rules: {
"@typescript-eslint/no-explicit-any": "off", // 추가
},
};
코드 전체입니다.
exportData
로 엑셀 다운로드를 할 수 있습니다.
타입이 지저분하고 any가 많은데 어쩔수가 없습니다.
// functions.ts
const wrapCsvValue = (
val: string,
formatFn?: (arg0: string, arg1: RowData | undefined) => string | undefined,
row?: RowData
) => {
let formatted = formatFn ? formatFn(val, row) : val;
formatted =
formatted === undefined || formatted === null ? "" : String(formatted);
formatted = formatted.split('"').join('""');
return `"${formatted}"`;
};
export const exportData = (columns: any, rows: any) => {
const content = [
columns.map((col: { label: string }) => wrapCsvValue(col.label)),
]
.concat(
rows.map((row: { [x: string]: any }) =>
columns
.map((col: any) => {
const value =
typeof col.field === "function"
? col.field(row)
: row[col.field === void 0 ? col.name : col.field];
if (value instanceof Date || dayjs.isDayjs(value)) {
return wrapCsvValue(
dayjs(value).format("YYYY.MM.DD HH:mm"),
col.format,
row
);
}
return wrapCsvValue(value, col.format, row);
})
.join(",")
)
)
.join("\r\n");
const bom = "\uFEFF";
const status = exportFile("table-export.csv", bom + content, "text/csv");
if (status !== true) {
commonNotify(
{
message: "Browser denied file download...",
},
"negative"
);
}
};
SPA를 S3 - Cloudfront 로 배포하였을때 path가 / 가 아닌 페이지에서 새로고침을 하면 404에러가 반환되는데 이를 해결하기 위한 방법이다.
Cloudfront -> 배포 선택 -> 오류 페이지 에서 사용자 정의 오류 응답 생성
을 눌러서 400, 403, 404
에러코드에 대한 응답 페이지 경로는 /
로 설정, HTTP 응답 코드는 200으로 설정해두면 된다.
해당 이슈는 에러라고 하긴 뭐하지만, 스토어에 앱을 출시할 때 개인정보처리방침, 이용약관 등을 확인시켜주어야 하는데 봇들은 404에러코드가 반환되면 페이지가 없다고 판단하여 리젝 처리를 해버리기때문이다.
모든 과정에서 다운로드 버튼이 있다면 다운로드를 해주세요.
사용자 이메일 주소를 입력해주고, 요청 항목에 디스크에 저장됨, 본인이 키 쌍 정보 지정 을 선택해주고 완료해줍니다.
애플 개발자 페이지로 들어가서 Certificates, Identifiers & Profiles
를 들어가주세요.
Certificates 에서 IOS Distribution (App Store Connect And Ad Hoc)을 체크하고 Continue를 해주세요.
스토어에서 Xcode 설치
cocoapods 설치
$ brew install cocoapods
# or
$ sudo gem install cocoapods
현 날짜 기준으로 프로젝트 생성시, vite, vue, pinia 기타 등등 세팅을 할때 모두 가장 최신버전으로 세팅을 해두었을때를 가정
// en.json
{
"word.person": "{person} person"
}
우선 카카오 개발자 센터를 들어가서 앱 등록을 해주세요.
플랫폼에 들어가 사용할 플랫폼을 등록해줍니다.
앱키에서 Javascript 키를 복사하여 다음 코드에 넣어서 index.html
에 넣어주세요.
해시(Hash)는 데이터를 고정된 크기의 고유한 값으로 변환하는 함수나 알고리즘을 의미합니다. 주로 데이터의 무결성을 확인하거나, 데이터 검색의 효율성을 높이기 위해 사용됩니다. 안드로이드 개발에서는 해시를 주로 키 해시(Key Hash) 형태로 사용합니다.
**키 해시(Key Hash)**란 안드로이드 애플리케이션의 서명 키를 해싱한 결과로, 주로 외부 API 서비스(예: 카카오맵 API)를 사용할 때 보안 목적으로 사용됩니다. API 제공자는 애플리케이션이 올바르게 서명된 것인지 확인하기 위해 키 해시를 요구합니다.
플러터는 위젯을 조합하여 뷰를 그려냅니다.
Text, Image, Icon, Box
기본 4가지가 있습니다.
이미지 같은 경우 다음과 같이 설정해주세요.
pubspec.yaml
이 파일은 앱에서 필요한 모든 것들이 담겨있는 파일입니다.
이곳에 이미지를 등록시켜주어야 합니다.
프로젝트 루트에 assets
폴더를 만들어주고 안에 이미지를 넣어주고, pubspec.yaml
에 다음과 같이 해주시면 됩니다.
https://docs.flutter.dev/get-started/install
해당 링크를 들어가서 자신의 운영체제에 맞는 것을 찾아서 다운로드를 받고, 압축 해제를 해주세요.
Window의 경우 환경 변수를 들어가서 사용자 변수에 path
에 flutter를 압축 해제한 경로에서 /bin
을 추가하여 적은 뒤 생성해주세요.