본문으로 건너뛰기
Quasar 에서 엑셀 다운로드 하기

Quasar 에서 엑셀 다운로드 하기

코드 전체입니다.

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"
    );
  }
};

O-h-y-o1분 미만Quasarexport csvexport csvtypescript
사용자에게 앱 업데이트 소식 알리기

사용자에게 앱 업데이트 소식 알리기

Capacitor는 웹뷰를 사용하기 때문에 단순 컨텐츠 업데이트는 웹을 통하여 가능합니다.

하지만 카메라 사용, 키보드 이벤트 같은 경우에는 순수 자바스크립트로는 접근할 수가 없기 때문에 플러그인을 이용하여 접근할 수 있습니다.

이번 글은, 웹 업데이트가 아닌 앱 자체 업데이트가 되었고 사용자에게 스토어에서 업데이트를 받게 하는 방법입니다.

우선 @capacitor/app-launcher 와 @capacitor/app, @capacitor/core 를 설치해주세요.


O-h-y-o1분 미만AppCapacitorQuasarAppCapacitorQuasar