nextjs-shopify-boilerplate:基于纯Next.js的shopify应用程序样板。 使用自己的无cookie身份验证实现-源码

上传者: 42127937 | 上传时间: 2021-02-26 20:04:20 | 文件大小: 659KB | 文件类型: ZIP
使用Next.js和React Router构建一个单页面应用程序 在Next.js项目中使用React Router的原因很多! React Router比Next的路由器灵活得多,并且可以轻松地在路由之间甚至深度嵌套的路由之间共享布局和状态。 要使用Next.js做到这一点,需要将所有共享逻辑整合到一个自定义_app.tsx组件中,并使用。 如果您正在构建单页应用程序而不必担心SEO,那么将React Router与Next.js结合使用将是一个强大的组合。 不幸的是,Next.js团队没有提供有关如何执行此操作的指南。 此回购演示了如何实现这一目标。 有关此项目的完整说明,请访问 。 该方法 基本思路: 创建一个自定义应用程序( /pages/_app.tsx ) 如果typeof window === "undefined"则返回null 。 这是必需的,以防止在SSR步骤

文件下载

资源详情

[{"title":"( 38 个子文件 659KB ) nextjs-shopify-boilerplate:基于纯Next.js的shopify应用程序样板。 使用自己的无cookie身份验证实现-源码","children":[{"title":"nextjs-shopify-boilerplate-main","children":[{"title":".gitignore <span style='color:#111;'> 386B </span>","children":null,"spread":false},{"title":"generated","children":[{"title":"sdk.ts <span style='color:#111;'> 1.15MB </span>","children":null,"spread":false},{"title":"graphql.ts <span style='color:#111;'> 1.16MB </span>","children":null,"spread":false}],"spread":true},{"title":"components","children":[{"title":"schema.graphql <span style='color:#111;'> 375B </span>","children":null,"spread":false},{"title":"pages","children":[{"title":"Home.tsx <span style='color:#111;'> 873B </span>","children":null,"spread":false}],"spread":true},{"title":"App.tsx <span style='color:#111;'> 333B </span>","children":null,"spread":false}],"spread":true},{"title":"prisma","children":[{"title":"dev.db <span style='color:#111;'> 28.00KB </span>","children":null,"spread":false},{"title":"migrations","children":[{"title":"20210216113501_add_timestamps","children":[{"title":"migration.sql <span style='color:#111;'> 577B </span>","children":null,"spread":false}],"spread":true},{"title":"20210216083736_init","children":[{"title":"migration.sql <span style='color:#111;'> 228B </span>","children":null,"spread":false}],"spread":true},{"title":"20210218112417_change_nonce_type","children":[{"title":"migration.sql <span style='color:#111;'> 665B </span>","children":null,"spread":false}],"spread":true},{"title":"migration_lock.toml <span style='color:#111;'> 59B </span>","children":null,"spread":false},{"title":"20210218102003_add_nonce_check","children":[{"title":"migration.sql <span style='color:#111;'> 61B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"schema.prisma <span style='color:#111;'> 515B </span>","children":null,"spread":false}],"spread":true},{"title":"package.json <span style='color:#111;'> 2.27KB </span>","children":null,"spread":false},{"title":"next.config.js <span style='color:#111;'> 190B </span>","children":null,"spread":false},{"title":"codegen.yml <span style='color:#111;'> 484B </span>","children":null,"spread":false},{"title":"LICENSE <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"tsconfig.json <span style='color:#111;'> 590B </span>","children":null,"spread":false},{"title":".env <span style='color:#111;'> 648B </span>","children":null,"spread":false},{"title":".prettierignore <span style='color:#111;'> 80B </span>","children":null,"spread":false},{"title":"schema.json <span style='color:#111;'> 2.49MB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 1.88KB </span>","children":null,"spread":false},{"title":"next-env.d.ts <span style='color:#111;'> 75B </span>","children":null,"spread":false},{"title":"lib","children":[{"title":"shopify","children":[{"title":"shopify-utils.graphql <span style='color:#111;'> 621B </span>","children":null,"spread":false},{"title":"index.ts <span style='color:#111;'> 2.58KB </span>","children":null,"spread":false},{"title":"utils.ts <span style='color:#111;'> 140B </span>","children":null,"spread":false}],"spread":false},{"title":"db","children":[{"title":"index.ts <span style='color:#111;'> 96B </span>","children":null,"spread":false}],"spread":false},{"title":"auth","children":[{"title":"index.ts <span style='color:#111;'> 6.63KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"config.ts <span style='color:#111;'> 234B </span>","children":null,"spread":false},{"title":"pages","children":[{"title":"api","children":[{"title":"local.ts <span style='color:#111;'> 433B </span>","children":null,"spread":false},{"title":"shopify.ts <span style='color:#111;'> 508B </span>","children":null,"spread":false},{"title":"webhooks","children":[{"title":"app_uninstalled.ts <span style='color:#111;'> 717B </span>","children":null,"spread":false},{"title":"carts_update.ts <span style='color:#111;'> 315B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"auth","children":[{"title":"callback.tsx <span style='color:#111;'> 337B </span>","children":null,"spread":false}],"spread":false},{"title":"index.tsx <span style='color:#111;'> 1.41KB </span>","children":null,"spread":false},{"title":"_app.tsx <span style='color:#111;'> 209B </span>","children":null,"spread":false}],"spread":false},{"title":".prettierrc <span style='color:#111;'> 340B </span>","children":null,"spread":false},{"title":"yarn.lock <span style='color:#111;'> 423.29KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明