ボタン Svelte コンポーネント
ボタン Svelte コンポーネントは、Framework7 の ボタン 要素を表します。
ボタンコンポーネント
以下のコンポーネントが含まれています
Button
- 単一のボタン
ボタンのプロパティ
ボタンコンポーネントは、リンク コンポーネントとほぼ同じプロパティを持っていますが、ボタン固有のプロパティがいくつか追加されています。
プロパティ | タイプ | デフォルト | 説明 |
---|---|---|---|
<Button> プロパティ | |||
type | string | これが submit 、button 、または reset のいずれかの場合、同じ type 属性を持つ <button> 要素としてレンダリングされます。 | |
tabLink | string boolean | タブリンクを有効にし、ターゲットタブの CSS セレクターを指定します (文字列として指定された場合)。 | |
tabLinkActive | boolean | false | このタブリンクをアクティブにします。 |
active | boolean | false | セグメントで使用する場合、このボタンをアクティブ状態にします。 tab-link-active の代わりに使用する必要があります。 |
text | string | ボタンのテキストラベル | |
tooltip | string | ボタンのホバー/プレス時に表示されるボタン ツールチップ テキスト | |
tooltipTrigger | string | hover | ツールチップをトリガー (開く) 方法を定義します。 hover 、click 、または manual を指定できます。 |
round | boolean | false | ボタンを丸くします。 |
roundIos | boolean | false | iOS テーマの場合のみボタンを丸くします。 |
roundMd | boolean | false | MD テーマの場合のみボタンを丸くします。 |
large | boolean | false | 大きなボタンにします。 |
largeIos | boolean | false | iOS テーマの場合のみ大きなボタンにします。 |
largeMd | boolean | false | MD テーマの場合のみ大きなボタンにします。 |
small | boolean | false | 小さなボタンにします。 |
smallIos | boolean | false | iOS テーマの場合のみ小さなボタンにします。 |
smallMd | boolean | false | MD テーマの場合のみ小さなボタンにします。 |
fill | boolean | false | 塗りつぶされた色のボタンにします。 |
fillIos | boolean | false | iOS テーマの場合のみ塗りつぶされた色のボタンにします。 |
fillMd | boolean | false | MD テーマの場合のみ塗りつぶされた色のボタンにします。 |
tonal | boolean | false | トナルスタイルのボタンにします。 |
tonalIos | boolean | false | iOS テーマの場合のみトナルスタイルのボタンにします。 |
tonalMd | boolean | false | MD テーマの場合のみトナルスタイルのボタンにします。 |
raised | boolean | false | ボタンを隆起させます。 |
raisedIos | boolean | false | iOS テーマの場合のみボタンを隆起させます。 |
raisedMd | boolean | false | MD テーマの場合のみボタンを隆起させます。 |
outline | boolean | false | ボタンをアウトラインにします。 |
outlineIos | boolean | false | iOS テーマの場合のみボタンをアウトラインにします。 |
outlineMd | boolean | false | MD テーマの場合のみボタンをアウトラインにします。 |
<Button> プリローダー関連のプロパティ | |||
preloader | boolean | false | ボタンにプリローダーを表示できるようにします。 |
loading | boolean | false | プリローダーの表示/非表示とボタンテキストの表示/非表示を切り替えるボタンの状態を制御します (ボタンをロード状態に切り替えます)。 |
preloaderColor | string | ボタンのプリローダーの色 | |
preloaderSize | number string | ボタンのプリローダーのサイズ | |
<Button> アイコン関連のプロパティ | |||
iconSize | string number | アイコンサイズ (px) | |
iconColor | string | アイコンの色。 デフォルトカラー のいずれか | |
icon | string | カスタムアイコンクラス | |
iconF7 | string | F7 アイコンフォントアイコンの名前 | |
iconMaterial | string | マテリアルアイコンフォントアイコンの名前 | |
iconIos | string | iOS テーマが使用されている場合に使用されるアイコン。コロンで区切られたアイコンファミリーとアイコン名で構成されます。例: f7:house | |
iconMd | string | MD テーマが使用されている場合に使用されるアイコン。コロンで区切られたアイコンファミリーとアイコン名で構成されます。例: material:home | |
<Button> ナビゲーション/ルーター関連のプロパティ | |||
href | string boolean | # | ロードするページの URL。ブール値 href="false" の場合、href タグは追加されません。 |
target | string | リンクターゲット属性の値。例: _blank 、_self など | |
view | string | ページをロードするビューの CSS セレクター。または、現在のビューにロードする場合は current 。 | |
external | boolean | Framework7 のリンククリックハンドラーをバイパスできるようにします。 | |
back | boolean | 戻るナビゲーションリンクを有効にします。 | |
openIn | string | ページルートをモーダルまたはパネルとして開くことができます。 popup 、loginScreen 、sheet 、popover 、または panel を指定できます。 | |
force | boolean | ページを強制的にロードし、履歴の前のページを無視します (back プロパティと組み合わせて使用します)。 | |
reloadCurrent | boolean | 現在アクティブなページの代わりに新しいページをリロードします。 | |
reloadPrevious | boolean | 履歴の前のページをルートからの新しいページに置き換えます。 | |
reloadAll | boolean | 新しいページをロードし、履歴と DOM から以前のすべてのページを削除します。 | |
reloadDetail | boolean | マスター詳細ビューの詳細ページをリロードします。 | |
animate | boolean | ページアニメーションを無効にします。 | |
transition | string | カスタムページトランジション の名前 | |
ignoreCache | boolean | キャッシュを無視します。 | |
routeTabId | string | ルーティング可能なタブ ID | |
routeProps | object | ターゲットルートコンポーネントに渡される追加のプロパティを含むオブジェクト | |
preventRouter | boolean | false | 設定されている場合、Framework7 ルーターによって処理されません。 |
<Button> アクション関連のプロパティ | |||
panelOpen | string boolean | クリック時に開くパネルの CSS セレクター。DOM に左右のパネルしかない場合は、left または right にすることができます。 | |
panelClose | string boolean | クリック時にパネルを閉じます。 | |
panelToggle | string boolean | クリック時に切り替えるパネルの CSS セレクター。DOM に左右のパネルしかない場合は、left または right にすることができます。 | |
actionsOpen | string boolean | クリック時に開くアクションシートの CSS セレクター | |
actionsClose | string boolean | クリック時に閉じるアクションシートの CSS セレクター。または、現在開いているアクションシートを閉じるブール値プロパティ。 | |
popupOpen | string boolean | クリック時に開くポップアップの CSS セレクター | |
popupClose | string boolean | クリック時に閉じるポップアップの CSS セレクター。または、現在開いているポップアップを閉じるブール値プロパティ。 | |
popoverOpen | string boolean | クリック時に開くポップオーバーの CSS セレクター | |
popoverClose | string boolean | クリック時に閉じるポップオーバーの CSS セレクター。または、現在開いているポップオーバーを閉じるブール値プロパティ。 | |
sheetOpen | string boolean | クリック時に開くシートモーダルの CSS セレクター | |
sheetClose | string boolean | クリック時に閉じるシートモーダルの CSS セレクター。または、現在開いているシートモーダルを閉じるブール値プロパティ。 | |
loginScreenOpen | string boolean | クリック時に開くログイン画面の CSS セレクター | |
loginScreenClose | string boolean | クリック時に閉じるログイン画面の CSS セレクター。または、現在開いているログイン画面を閉じるブール値プロパティ。 | |
sortableEnable | string boolean | クリック時に有効にするソータブルリストの CSS セレクター | |
sortableDisable | string boolean | クリック時に無効にするソータブルリストの CSS セレクター。または、現在開いているソータブルリストを閉じるブール値プロパティ。 | |
sortableToggle | string boolean | クリック時に切り替えるソータブルリストの CSS セレクター。または、現在開いている/閉じているソータブルリストを切り替えるブール値プロパティ。 | |
searchbarEnable | string boolean | クリック時に有効にする拡張可能なサーチバーの CSS セレクター。または、最初に見つかったサーチバーを有効にするブール値プロパティ。 | |
searchbarDisable | string boolean | クリック時に無効にする拡張可能なサーチバーの CSS セレクター。または、最初に見つかったサーチバーを無効にするブール値プロパティ。 | |
searchbarToggle | string boolean | クリック時に切り替える拡張可能なサーチバーの CSS セレクター。または、最初に見つかったサーチバーを切り替えるブール値プロパティ。 | |
searchbarClear | string boolean | クリック時にクリアする拡張可能なサーチバーの CSS セレクター。または、最初に見つかったサーチバーをクリアするブール値プロパティ。 | |
cardOpen | string boolean | クリック時に開く拡張可能なカードの CSS セレクター。または、最初に見つかった拡張可能なカードを開くブール値。 | |
cardClose | string boolean | クリック時に閉じる拡張可能なカードの CSS セレクター。または、現在開いている拡張可能なカードを閉じるブール値プロパティ。 | |
cardPreventOpen | boolean | このプロパティを持つ要素をクリックしても、親の拡張可能なカードは開きません。 |
ボタンイベント
イベント | 説明 |
---|---|
<Button> イベント | |
click | ボタンをクリックするとイベントがトリガーされます。 |
例
buttons.svelte
<script>
import {
Page,
Navbar,
BlockTitle,
Block,
Button,
} from 'framework7-svelte';
let isLoading1 = false;
let isLoading2 = false;
const load1 = () => {
if (isLoading1) return;
isLoading1 = true;
setTimeout(() => {
isLoading1 = false;
}, 4000);
};
const load2 = () => {
if (isLoading2) return;
isLoading2 = true;
setTimeout(() => {
isLoading2 = false;
}, 4000);
};
</script>
<!-- svelte-ignore a11y-invalid-attribute -->
<Page>
<Navbar title="Buttons" />
<BlockTitle>Usual Buttons</BlockTitle>
<Block strong outlineIos>
<div class="grid grid-cols-3 grid-gap">
<Button>Button</Button>
<Button>Button</Button>
<Button round>Round</Button>
</div>
</Block>
<BlockTitle>Tonal Buttons</BlockTitle>
<Block strong outlineIos>
<div class="grid grid-cols-3 grid-gap">
<Button tonal>Button</Button>
<Button tonal>Button</Button>
<Button tonal round>Round</Button>
</div>
</Block>
<BlockTitle>Fill Buttons</BlockTitle>
<Block strong outlineIos>
<div class="grid grid-cols-3 grid-gap">
<Button fill>Button</Button>
<Button fill>Button</Button>
<Button fill round>Round</Button>
</div>
</Block>
<BlockTitle>Outline Buttons</BlockTitle>
<Block strong outlineIos>
<div class="grid grid-cols-3 grid-gap">
<Button outline>Button</Button>
<Button outline>Button</Button>
<Button outline round>Round</Button>
</div>
</Block>
<BlockTitle>Raised Buttons</BlockTitle>
<Block strong outlineIos>
<p class="grid grid-cols-3 grid-gap">
<Button raised>Button</Button>
<Button raised fill>Fill</Button>
<Button raised outline>Outline</Button>
</p>
<p class="grid grid-cols-3 grid-gap">
<Button raised round>Round</Button>
<Button raised fill round>Fill</Button>
<Button raised outline round>Outline</Button>
</p>
</Block>
<BlockTitle>Large Buttons</BlockTitle>
<Block strong outlineIos>
<p class="grid grid-cols-2 grid-gap">
<Button large>Button</Button>
<Button large fill>Fill</Button>
</p>
<p class="grid grid-cols-2 grid-gap">
<Button large raised>Raised</Button>
<Button large raised fill>Raised Fill</Button>
</p>
<p class="grid grid-cols-2 grid-gap">
<Button large round>Round</Button>
<Button large round fill>Round Fill</Button>
</p>
</Block>
<BlockTitle>Small Buttons</BlockTitle>
<Block strong outlineIos>
<p class="grid grid-cols-3 grid-gap">
<Button small>Button</Button>
<Button small outline>Outline</Button>
<Button small fill>Fill</Button>
</p>
<p class="grid grid-cols-3 grid-gap">
<Button small round>Button</Button>
<Button small outline round>Outline</Button>
<Button small fill round>Fill</Button>
</p>
</Block>
<BlockTitle>Preloader Buttons</BlockTitle>
<Block strong outlineIos>
<p class="grid grid-cols-3 grid-gap">
<Button preloader loading={isLoading1} onClick={load1} large>Load</Button>
<Button preloader loading={isLoading2} onClick={load2} large fill>Load</Button>
</p>
</Block>
<BlockTitle>Color Buttons</BlockTitle>
<Block strong outlineIos>
<div class="grid grid-cols-3 grid-gap">
<Button color="red">Red</Button>
<Button color="green">Green</Button>
<Button color="blue">Blue</Button>
</div>
</Block>
<BlockTitle>Color Fill Buttons</BlockTitle>
<Block strong outlineIos>
<p class="grid grid-cols-3 grid-gap">
<Button color="red">Red</Button>
<Button color="green">Green</Button>
<Button color="blue">Blue</Button>
</p>
<p class="grid grid-cols-3 grid-gap">
<Button color="pink">Pink</Button>
<Button color="yellow">Yellow</Button>
<Button color="orange">Orange</Button>
</p>
<p class="grid grid-cols-3 grid-gap">
<Button color="black">Black</Button>
<Button color="white">White</Button>
</p>
</Block>
</Page>