これはすでにリポジトリに含まれていましたが、スクリプトを検証するために更新されました。
HTMX には、hx- が追加されたお気に入りのキーワードがすべて含まれています。
# General format is hx-[verb]hx-get # HTTP GEThx-post # HTTP POSThx-put # HTTP PUThx-patch # HTTP PATCHhx-delete # HTTP DELETEhx-swap # update content of an elementhx-target # specify element to affecthx-trigger # action that executes function
他にもありますが、これらはこのプロジェクトで使用される主なものです。
簡単なテストとして、./internal/views/components/logo.templ の開始 タグ内に hx-get=\\\"/\\\" と hx-trigger=\\\"click を追加します。 \\\".
ターミナルを開いて次を実行します:
templ generatego run ./cmd/server/main.go
次に、ブラウザに移動して、localhost:[YOUR PORT]/ に移動します。 Gopher をクリックすると、次のことがわかるはずです... あまりにも早く起こったので、おそらく気付かなかったでしょう。大丈夫です。開発者ツールを開き、「インスペクター」タブに移動します。 Gopher をもう一度クリックします。インスペクター タブの HTML が更新されていることがわかります。
これは HTMX の基本です。これにより、私たちが求めているレスポンシブな UI/UX が得られます。さて、hx-swap は名前は単純ですが、その場所については慎重に検討する必要があります。つまり、他の要素と干渉する場所には置かないでください。
例:
// container // end actorすべてのコントロールをボタン上に配置すると、すべてが消去され、更新用のボタンが表示されなくなります。ただし、作業の一部をコンテナに移動すると:
// container// end actor ボタンをクリックすると、コンテナの内部のデータのみが変更されます。ただし、さらに編集するためのボタンが存在します。
補遺
ここで立ち止まる理由は 2 つあります。
まず、htmx を使用して、そのままサイトをカスタマイズできます。次に、http.Response を使用して HTML コードを返すことができます。拡張により、templ コンポーネントも渡すことができます。これがどうなるかわかりますか?近日公開
全体を再構築し、機能を go handlerFunc() に移動します。
","image":"http://www.luping.net/uploads/20241005/17281148536700f0a57a72a.png","datePublished":"2024-11-07T13:21:30+08:00","dateModified":"2024-11-07T13:21:30+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」HTMX を GO に追加する
2024 年 11 月 7 日に公開ブラウズ:930
HTMX は intercooler.js の後継であり、API を作成することなく HTTP コマンドで HTML を拡張するために使用されます。さて、最初に抽象化レイヤーを削除すると言いましたが、私はどちらかというとシステム/ツール プログラマーなので、下で実際に何が起こっているかを把握するまでは、まだいくつかの抽象化が必要です。
基本的な考え方
HTMX は、要素を変更するために AJAX コマンドをデプロイします。これは ReactJs の仕組みと似ています。 ReactJs はコンテンツの更新を可能にし、HTML の更新は HTMX によって実現されます。
HTMXのインポート
簡単なワンライナーが ./internal/views/layout.templ
要素に追加されます。
これはすでにリポジトリに含まれていましたが、スクリプトを検証するために更新されました。
HTMXの使用
HTMX には、hx- が追加されたお気に入りのキーワードがすべて含まれています。
# General format is hx-[verb] hx-get # HTTP GET hx-post # HTTP POST hx-put # HTTP PUT hx-patch # HTTP PATCH hx-delete # HTTP DELETE hx-swap # update content of an element hx-target # specify element to affect hx-trigger # action that executes function他にもありますが、これらはこのプロジェクトで使用される主なものです。
簡単なテストとして、./internal/views/components/logo.templ の開始
タグ内に hx-get="/" と hx-trigger="click を追加します。 ".
ターミナルを開いて次を実行します:
templ generate go run ./cmd/server/main.go次に、ブラウザに移動して、localhost:[YOUR PORT]/ に移動します。 Gopher をクリックすると、次のことがわかるはずです... あまりにも早く起こったので、おそらく気付かなかったでしょう。大丈夫です。開発者ツールを開き、「インスペクター」タブに移動します。 Gopher をもう一度クリックします。インスペクター タブの HTML が更新されていることがわかります。
HX-スワップ
これは HTMX の基本です。これにより、私たちが求めているレスポンシブな UI/UX が得られます。さて、hx-swap は名前は単純ですが、その場所については慎重に検討する必要があります。つまり、他の要素と干渉する場所には置かないでください。
例:
// container // end actor// end-containerすべてのコントロールをボタン上に配置すると、すべてが消去され、更新用のボタンが表示されなくなります。ただし、作業の一部をコンテナに移動すると:
// container// end-container// end actor ボタンをクリックすると、コンテナの内部のデータのみが変更されます。ただし、さらに編集するためのボタンが存在します。
補遺
ここで立ち止まる理由は 2 つあります。
まず、htmx を使用して、そのままサイトをカスタマイズできます。次に、http.Response を使用して HTML コードを返すことができます。拡張により、templ コンポーネントも渡すことができます。これがどうなるかわかりますか?近日公開
全体を再構築し、機能を go handlerFunc() に移動します。
リリースステートメント この記事は次の場所に転載されています: https://dev.to/caffeineordeath/adding-htmx-to-go-2cah?1 侵害がある場合は、[email protected] に連絡して削除してください。最新のチュートリアル もっと>
\ "while(1)vs。for(;;):コンパイラの最適化はパフォーマンスの違いを排除しますか?\"while(1)vs。for(;;):速度の違いはありますか? loops? 回答: では、ほとんどの最新のコンパイラでは、(1)と(;;)。コンパイラー: perl: の両方が(1)と(;;)が同じオプコードをもたらします。 1 入力 - > 2を入力します 2 NextSt...プログラミング 2025-05-07に投稿しました
PHPの2つの等しいサイズの配列から値を同期して反復して印刷するにはどうすればよいですか?同じサイズの2つの配列の2つの配列から値を同期して反復して印刷する場合、同サイズの2つの配列を使用してselectboxを作成する場合、1つは対応する名前を含む1つを使用して、困難が不適切なsyntaxに起因する可能性があります。アレイ: foreach($ codes as $ code、...プログラミング 2025-05-07に投稿しました
ubuntu 12.04 mysqlローカル接続エラー修正ガイドプログラミング 2025-05-07に投稿しました
HTMLがページ番号やソリューションを印刷できない理由はhtmlページにページ番号を印刷できません。使用: @page { マージン:10%; @トップセンター{ フォントファミリー:sans-serif; font-weight:bold; font-size:2em; コンテンツ:カウンター(ページ)...プログラミング 2025-05-07に投稿しました
PHPを使用してBlob(画像)をMySQLに適切に挿入する方法は?php mysqlデータベースを持つmysqlデータベースにブロブを挿入すると、mysqlデータベースに画像を保存しようとすると、遭遇するかもしれません問題。このガイドは、画像データを正常に保存するためのソリューションを提供します。 ImageId、image) values( &...プログラミング 2025-05-07に投稿しました
1つのトランザクションでデータを複数のMySQLテーブルに効率的に挿入する方法は?mysqlは複数のテーブルに挿入されます 単一のMySQLクエリを持つ複数のテーブルにデータを挿入しようとすると、予期しない結果が得られる場合があります。複数のクエリが問題を解決するように思われるかもしれませんが、プロファイルテーブルのユーザーテーブルからマニュアルユーザーIDに自動イン...プログラミング 2025-05-07に投稿しました
PHPのUnicode文字列からURLに優しいナメクジを効率的に生成するにはどうすればよいですか?効率的なナメクジ生成のための関数を作成する スラッグの作成、URLで使用されるユニコード文字列の単純化された表現は、挑戦的な作業になります。この記事では、スラッグを効率的に生成し、特殊文字と非ASCII文字をURLに優しい形式に変換するための簡潔なソリューションを紹介します。一連の操作を使...プログラミング 2025-05-07に投稿しました
JavaScriptで複数の変数を宣言する方法はより保守可能ですか?javascriptの複数の変数を宣言する:2つの方法を調査する javascriptでは、開発者はしばしば複数の変数を宣言する必要性に遭遇します。これの2つの一般的なアプローチは次のとおりです。 var variable2 = "Testing ..."; var...プログラミング 2025-05-07に投稿しました
テキストからHTMLタグを削除するPython効率的な方法htmlタグをpythonで削除するために、html応答を操作することがよくあると、html応答を操作することがしばしば抽出され、形式のタグを排除します。これは、HTMLタグを効果的に剥がし、目的のプレーンテキストを残すことで実現できます。 mlstripperはHTML入力を取り、それを...プログラミング 2025-05-07に投稿しました
Node-MYSQLを使用して単一のクエリで複数のSQLステートメントを実行するにはどうすればよいですか?node-mysql in node.jsでのマルチステートメントクエリサポート、ノード-Mysqlパッケージを使用してnode-mysqlを使用してnode-mysqlを使用して、1つのクエリを使用してnode-mysqlの記録を使用して、1つのクエリで複数のsqlステートメントを...プログラミング 2025-05-07に投稿しました
ubuntu/linuxにmysql-pythonをインストールするときに\ "mysql_configが見つかりません\"エラーを修正する方法は?mysql-pythonインストールエラー: "mysql_config not obst" をubuntu/linuxボックスにインストールしようとする試みを試みます。このエラーは、MySQL開発ライブラリが欠落しているために発生します。 この問題を解決するには、...プログラミング 2025-05-07に投稿しました
入力:なぜ「警告:mysqli_query()がパラメーター1がmysqliであると予想し、リソースが与えられた「エラーが発生し、それを修正する方法」 出力:エラーを解決するための分析と修正「警告:mysqli_query()パラメーターは、リソースの代わりにmysqliである必要があります」mysqli_query()は、パラメーター1がmysqliであることを期待しています。発生する可能性があります。このエラーは、最初のパラメーターのタイプと予想されるリソースタイプとの間の不一致を示します。これらの2つの拡張機能は交換可能ではなく、一緒に使用することはできません。 MySQ...プログラミング 2025-05-07に投稿しました
Linuxサーバーにarchive_zipをインストールした後、\ "class \ 'ziparchive \'が見つかりません\"エラーを取得するのはなぜですか?class 'ziparchive' linuxサーバーにarchive_zipをインストールする際のエラーは見つかりません 症状: を実行しようとするときに、Ziparkive follingive folling_zip 0.1.1.1.1.1.1.1.1.1.1.1...プログラミング 2025-05-07に投稿しました
データ挿入時の「一般エラー: 2006 MySQL サーバーが消えました」を修正するにはどうすればよいですか?レコードの挿入中に「一般エラー: 2006 MySQL サーバーが消えました」を解決する方法はじめに:MySQL データベースにデータを挿入すると、「一般エラー: 2006 MySQL サーバーが消えました。」というエラーが発生することがあります。このエラーは、通常、MySQL 構成内の 2 つの変...プログラミング 2025-05-07に投稿しました
Pandas DataFrame列を日付ごとにデータフレーム形式とフィルターに変換するにはどうすればよいですか?パンダのデータフレーム列をdatetime形式に変換 シナリオ: データは、ストリングを含むさまざまな形式でしばしば存在します。時間データを操作する場合、タイムスタンプは最初は文字列として表示されますが、正確な分析のためにデータタイム形式に変換する必要があります。この関数は、文字列列の予想...プログラミング 2025-05-07に投稿しました中国語を勉強する
- 1 「歩く」は中国語で何と言いますか? 走路 中国語の発音、走路 中国語学習
- 2 「飛行機に乗る」は中国語で何と言いますか? 坐飞机 中国語の発音、坐飞机 中国語学習
- 3 「電車に乗る」は中国語で何と言いますか? 坐火车 中国語の発音、坐火车 中国語学習
- 4 「バスに乗る」は中国語で何と言いますか? 坐车 中国語の発音、坐车 中国語学習
- 5 中国語でドライブは何と言うでしょう? 开车 中国語の発音、开车 中国語学習
- 6 水泳は中国語で何と言うでしょう? 游泳 中国語の発音、游泳 中国語学習
- 7 中国語で自転車に乗るってなんて言うの? 骑自行车 中国語の発音、骑自行车 中国語学習
- 8 中国語で挨拶はなんて言うの? 你好中国語の発音、你好中国語学習
- 9 中国語でありがとうってなんて言うの? 谢谢中国語の発音、谢谢中国語学習
- 10 How to say goodbye in Chinese? 再见Chinese pronunciation, 再见Chinese learning
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3