이것은 이미 저장소에 포함되어 있었지만 스크립트를 확인하기 위해 업데이트되었습니다.
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/comComponents/logo.templ의 시작 태그 내부에 hx-get=\\\"/\\\" 및 hx-trigger=\\\"click을 추가합니다. \\\".
터미널을 열고 다음을 실행하세요.
templ generatego run ./cmd/server/main.go
이제 브라우저로 이동하여 localhost:[YOUR PORT]/로 이동합니다. Gopher를 클릭하면... 음, 너무 빨리 일어나서 눈치채지 못했을 것입니다. 괜찮습니다. 개발자 도구를 열고 검사기 탭으로 이동합니다. 고퍼를 다시 클릭하세요. 검사기 탭의 HTML에서 업데이트를 확인해야 합니다.
이것이 HTMX의 기본입니다. 이것이 바로 우리가 찾고 있는 반응형 UI/UX를 제공하는 것입니다. 이제 hx-swap은 이름은 간단하지만 위치에 대한 세심한 고려가 필요합니다. 즉, 다른 요소를 방해할 수 있는 곳에 두지 말라는 뜻입니다.
예:
// container // end actor모든 컨트롤을 버튼에 배치하면 모든 내용이 지워지고 업데이트용 버튼이 표시되지 않습니다. 그러나 일부 작업을 컨테이너로 옮기면:
// container// end actor 이제 버튼을 클릭하면 컨테이너 내부의 데이터만 변경됩니다. 단, 이제 추가 편집을 위한 버튼이 존재합니다.
부록
저는 두 가지 이유로 여기서 들릅니다.
첫째, htmx를 사용하여 사이트를 그대로 사용자 정의할 수 있습니다. 둘째, http.Reponse를 사용하여 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"}}
"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.GO에 HTMX 추가
2024-11-07에 게시됨검색:690
HTMX는 API를 작성할 필요 없이 HTTP 명령으로 HTML을 확장하는 데 사용되는 intercooler.js의 후속 버전입니다. 이제 처음에는 추상화 계층을 제거한다고 말했지만 저는 시스템/도구 프로그래머에 더 가깝기 때문에 그 아래에서 실제로 무슨 일이 일어나고 있는지 이해할 때까지 여전히 추상화가 필요합니다.
기본 사상
HTMX는 AJAX 명령을 배포하여 요소를 수정합니다. 이는 ReactJs의 작동 방식과 유사합니다. ReactJs는 콘텐츠 업데이트를 허용하고 HTMX는 HTML에 대해 이를 충족합니다.
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/comComponents/logo.templ의 시작
태그 내부에 hx-get="/" 및 hx-trigger="click을 추가합니다. ".
터미널을 열고 다음을 실행하세요.
templ generate go run ./cmd/server/main.go이제 브라우저로 이동하여 localhost:[YOUR PORT]/로 이동합니다. Gopher를 클릭하면... 음, 너무 빨리 일어나서 눈치채지 못했을 것입니다. 괜찮습니다. 개발자 도구를 열고 검사기 탭으로 이동합니다. 고퍼를 다시 클릭하세요. 검사기 탭의 HTML에서 업데이트를 확인해야 합니다.
HX-스왑
이것이 HTMX의 기본입니다. 이것이 바로 우리가 찾고 있는 반응형 UI/UX를 제공하는 것입니다. 이제 hx-swap은 이름은 간단하지만 위치에 대한 세심한 고려가 필요합니다. 즉, 다른 요소를 방해할 수 있는 곳에 두지 말라는 뜻입니다.
예:
// container // end actor// end-container모든 컨트롤을 버튼에 배치하면 모든 내용이 지워지고 업데이트용 버튼이 표시되지 않습니다. 그러나 일부 작업을 컨테이너로 옮기면:
// container// end-container// end actor 이제 버튼을 클릭하면 컨테이너 내부의 데이터만 변경됩니다. 단, 이제 추가 편집을 위한 버튼이 존재합니다.
부록
저는 두 가지 이유로 여기서 들릅니다.
첫째, htmx를 사용하여 사이트를 그대로 사용자 정의할 수 있습니다. 둘째, http.Reponse를 사용하여 HTML 코드를 반환할 수 있습니다. 확장하면 templ 구성 요소도 전달할 수 있습니다. 이게 어디로 가는지 아시나요?출시 예정
전체 재구성 및 기능을 go handlerFunc()으로 이동합니다.
릴리스 선언문 이 글은 https://dev.to/caffeineordeath/adding-htmx-to-go-2cah?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.최신 튜토리얼 더>
Firefox Back 버튼을 사용할 때 JavaScript 실행이 중단되는 이유는 무엇입니까?원인 및 솔루션 : 이 동작은 브라우저 캐싱 자바 스크립트 리소스에 의해 발생합니다. 이 문제를 해결하고 후속 페이지 방문에서 스크립트가 실행되도록하기 위해 Firefox 사용자는 Window.onload 이벤트에서 호출되도록 빈 기능을 설정해야합니다. ...프로그램 작성 2025-07-23에 게시되었습니다
PHP를 사용하여 XML 파일에서 속성 값을 효율적으로 검색하려면 어떻게해야합니까?옵션> 1 varnum "varnum"을 복원 할 수 있습니다. stumped. 이 기능은 XML 요소의 속성에 대한 액세스를 연관 배열로 제공합니다. $ xml = simplexml_load_file ($ file);...프로그램 작성 2025-07-23에 게시되었습니다
자바 스크립트 객체의 키를 알파벳순으로 정렬하는 방법은 무엇입니까?object.keys (...) . .sort () . 정렬 된 속성을 보유 할 새 개체를 만듭니다. 정렬 된 키 어레이를 반복하고 리소셔 함수를 사용하여 원래 객체에서 새 객체에 해당 값과 함께 각 키를 추가합니다. 다음 코드는 프로세...프로그램 작성 2025-07-23에 게시되었습니다
PostgreSQL의 각 고유 식별자에 대한 마지막 행을 효율적으로 검색하는 방법은 무엇입니까?postgresql : 각각의 고유 식별자에 대한 마지막 행을 추출하는 select distinct on (id) id, date, another_info from the_table order by id, date desc; id ...프로그램 작성 2025-07-23에 게시되었습니다
`JSON '패키지를 사용하여 이동하는 JSON 어레이를 구문 분석하는 방법은 무엇입니까?JSON 어레이를 Parsing JSON 패키지 문제 : JSON 패키지를 사용하여 어레이를 나타내는 JSON 스트링을 어떻게 구문 분석 할 수 있습니까? 예 : type JsonType struct { Array []string ...프로그램 작성 2025-07-23에 게시되었습니다
PHP를 사용하여 Blob (이미지)을 MySQL에 올바르게 삽입하는 방법은 무엇입니까?문제 $ sql = "삽입 ImagesTore (imageId, image) 값 ( '$ this- & gt; image_id', 'file_get_contents ($ tmp_image)'; 결과적으로 실제 이...프로그램 작성 2025-07-23에 게시되었습니다
동적 인 크기의 부모 요소 내에서 요소의 스크롤 범위를 제한하는 방법은 무엇입니까?문제 : 고정 된 사이드 바로 조정을 유지하면서 사용자의 수직 스크롤과 함께 이동하는 스크롤 가능한 맵 디브가있는 레이아웃을 고려합니다. 그러나 맵의 스크롤은 뷰포트의 높이를 초과하여 사용자가 페이지 바닥 글에 액세스하는 것을 방지합니다. ...프로그램 작성 2025-07-23에 게시되었습니다
Spring Security 4.1 이상에서 CORS 문제를 해결하기위한 안내서Spring Security 4.1 이후 Cors 지원을 활성화하기위한보다 간단한 접근 방식이 있습니다. webmvcconfigureradapter { @override public void addcorsmappings (Corsregistry Registry) {...프로그램 작성 2025-07-23에 게시되었습니다
열의 열이 다른 데이터베이스 테이블을 어떻게 통합하려면 어떻게해야합니까?다른 열이있는 결합 테이블 ] 는 데이터베이스 테이블을 다른 열로 병합하려고 할 때 도전에 직면 할 수 있습니다. 간단한 방법은 열이 적은 테이블의 누락 된 열에 null 값을 추가하는 것입니다. 예를 들어, 표 B보다 더 많은 열이있는 두 개의 테이블,...프로그램 작성 2025-07-23에 게시되었습니다
Fastapi Custom 404 페이지 제작 가이드custom 404 fastapi 가없는 페이지를 찾을 수 없습니다. 적절한 방법은 특정 요구 사항에 따라 다릅니다. 404 상태 코드에서 리디렉션 response = await call_next(request) if response.sta...프로그램 작성 2025-07-23에 게시되었습니다
\ "(1) 대 (;;) : 컴파일러 최적화는 성능 차이를 제거합니까? \"대답 : 대부분의 최신 컴파일러에는 (1)과 (;;). 컴파일러 : s-> 7 8 v-> 4를 풀립니다 -e syntax ok gcc : GCC에서 두 루프는 다음과 같이 동일한 어셈블리 코드로 컴파일합니다. . t_while : ...프로그램 작성 2025-07-23에 게시되었습니다
regex를 사용하여 PHP에서 괄호 안에서 텍스트를 추출하는 방법$ fullstring = "이 (텍스트)을 제외한 모든 것을 무시하는 것"; $ start = strpos ( ', $ fullstring); $ fullString); $ shortstring = substr ($ fulls...프로그램 작성 2025-07-23에 게시되었습니다
팬더에서 연도와 1/4 열을 하나의주기적인 열로 병합하는 방법은 무엇입니까?새로운 기간 열에 대한 열을 연결하는 열 문제 문 : 라는 열이있는 pandas dataframe을 고려하십시오 : 분기 2000 Q2 2001 Q3 목표는 다음과 같은 결과를 얻기 위해 "연도"...프로그램 작성 2025-07-23에 게시되었습니다
Object-Fit : IE 및 Edge에서 표지가 실패, 수정 방법?이 문제를 해결하기 위해 문제를 해결하는 영리한 CSS 솔루션을 사용합니다. -50%); 높이 : 100%; 너비 : 자동; // 수직 블록의 경우 높이 : 자동; 너비 : 100%; // 수평 블록의 경우 이 조합은 절대 포지셔닝을 사용하여 중앙에서 ...프로그램 작성 2025-07-23에 게시되었습니다
MySQL에서 데이터를 피벗하여 그룹을 어떻게 사용할 수 있습니까?select d.data_timestamp, sum (data_id = 1 that data_value else 0 End), 'input_1'로 0 End), sum (data_id = 2 an Els.] d.data_timestamp ...프로그램 작성 2025-07-23에 게시되었습니다중국어 공부
- 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