openUrl

http: / https: の URL をユーザーの既定ブラウザで開きます。Fluxlay ホストが tauri-plugin-opener を呼び、OS の既定ハンドラ (Chrome / Safari / Edge 等) にルーティングされます。

インポート

import { openUrl } from "@fluxlay/react";

シグネチャ

function openUrl(url: string): Promise<void>;

使い方

import { openUrl } from "@fluxlay/react";
 
function ExternalLink({ href, children }: { href: string; children: React.ReactNode }) {
  return (
    <button type="button" onClick={() => void openUrl(href)}>
      {children}
    </button>
  );
}

用途

壁紙 webview はサンドボックス化されており、ページ内から OS シェルへ navigate する手段はなく、<a target="_blank"> も壁紙ウィンドウのフレームポリシーで弾かれます。openUrl は壁紙内のリンクをクリック可能にする唯一の手段です。

備考

  • 受け付けるスキームは http: / https: のみ。file: / javascript: / 独自プロトコルは HTTP 400。
  • promise はホストが OS に URL を渡した時点で resolve する。ブラウザがページのロードを完了するまで待つわけではない。
  • network: 宣言は不要。OS のブラウザが起動してそちらが独立してリクエストを発行するため、壁紙 webview は fetch に関与しない。