我不能使我的导航栏响应,我不知道为什么。当我在Layout. server. jsx中设置一个常量时,会出错。
我想我不能在按钮上创建onClick事件,但我不知道为什么以及如何解决它。
You can find the git repository here: https://github.com/imnotremi/hydrogen-test
请注意,在hydrogen.config.js
中,您必须输入氢气的免费使用凭证:
Shopify Domain : "hydrogen-preview.myshopify.com" Storfront Acces Token : "3b580e70970c4528da70c98e097c2fa0"
下面是我的代码:
import { useShopQuery, CacheLong, gql, Seo, Link } from "@shopify/hydrogen";
import { Suspense } from "react";
import CartBubble from "./CartBubble.client";
export default function Layout({children}) {
const data = useShopQuery({
query: SHOP_QUERY,
cache: CacheLong(),
preload: true,
});
const { data: { shop }, } = data;
return (
<>
<Seo
type="defaultSeo"
data={{
title: shop.name,
description: shop.description
}}
/>
<header className="">
<div className="text-center bg-transparent">
<div className=" container flex items-center justify-between py-4 ">
<Link to="/" className=" font-bold logo min-w-[33.33%]">
{shop.name}
</Link>
<ul className=" flex place-self-center text-center justify-around list-none font-nav gap-3 max-w-[33.33%]">
<li className="text-slate-600 hover:text-slate-800"><a href="/catalog">Catalog</a></li>
<li className="text-slate-600 hover:text-slate-800"><a href="/collections/freestyle">Freestyle</a></li>
<li className="text-slate-600 hover:text-slate-800"><a href="/Aboutus">About us</a></li>
</ul>
<Link to="/cart" className="flex items-center justify-end font-nav gap-3 w-[33.33%] text-slate-600 hover:text-slate-800">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" strokeWidth={1.5} stroke="currentColor" className="w-6 h-6">
<path strokeLinecap="round" strokeLinejoin="round" d="M2.25 3h1.386c.51 0 .955.343 1.087.835l.383 1.437M7.5 14.25a3 3 0 00-3 3h15.75m-12.75-3h11.218c1.121-2.3 2.1-4.684 2.924-7.138a60.114 60.114 0 00-16.536-1.84M7.5 14.25L5.106 5.272M6 20.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm12.75 0a.75.75 0 11-1.5 0 .75.75 0 011.5 0z" />
</svg>
<CartBubble />
</Link>
</div>
</div>
</header>
<main>
<Suspense>{children}</Suspense>
</main>
</>
); }
const SHOP_QUERY = gql`
query ShopInfo {
shop {
name
description
}
}
`;
I have try to make a const in Layout.server.jsx, also to create a Layout.client.jsx component but that doesn't work either.
我试着在Layout. server. jsx中创建一个常量,也试着创建一个Layout. client. jsx组件,但是也不起作用。
1条答案
按热度按时间xuo3flqw1#
我对
shopify-hydrogen
不熟悉,但是我可以告诉您如何在tailwindcss
中实现这一点您必须使用
relative
absolute
和z-index
tailwind类来覆盖页面内容上的导航栏。逻辑:
使父
relative
的z-index
值小于将用于导航栏的子absolute
div。大型器械中的输出:
较小器械的输出:
代码:
您还可以使用此tailwind play链接
额外:使用汉堡菜单切换移动导航栏
大型设备上的输出
在
hamburger menu
的小型设备中输出点击
hamburger menu
时代码: