当前位置: 首页 > wzjs >正文

做网站都能用什么做制作app的公司有哪些

做网站都能用什么做,制作app的公司有哪些,asp.net 大型网站开发,禹城网站定制在 Next.js 12 中,动态路由和参数传递主要通过文件系统路由(File-system Routing)实现。以下是详细步骤和示例: 一、创建动态路由 ‌文件命名规则‌ 在 pages 目录下创建文件名用 [参数名].js 格式的文件,例如&…

在 Next.js 12 中,动态路由和参数传递主要通过文件系统路由(File-system Routing)实现。以下是详细步骤和示例:

一、创建动态路由

  1. ‌文件命名规则‌

pages 目录下创建文件名用 [参数名].js 格式的文件,例如:

pages/posts/[id].js // 单个参数
pages/[category]/[id].js // 多段参数

  1. 匹配的 URL 示例‌
  • /posts/123id: '123'
  • /news/456category: 'news', id: '456'

二、传递参数

  1. 使用 <Link> 组件导航
import Link from 'next/link';// 传递单个参数
<Link href="/posts/123">Post 123</Link>// 传递多个参数(自动拼接 URL)
<Link href="/news/456?author=John">Post 456</Link>
  1. 编程式导航(useRouter
import { useRouter } from 'next/router';function MyComponent() {const router = useRouter();const navigate = () => {// 传递单个参数router.push('/posts/123');// 传递多个参数(URL 自动拼接)router.push({pathname: '/news/[id]',query: { id: '456', author: 'John' },});};return <button onClick={navigate}>跳转</button>;
}

三、获取参数

  1. 在页面组件中获取参数
    使用 useRouterquery 对象:
import { useRouter } from 'next/router';function Post() {const router = useRouter();const { id } = router.query; // 获取动态路由参数const { author } = router.query; // 获取查询参数(如 ?author=John)return <div>Post ID: {id}, Author: {author}</div>;
}
  1. getStaticPropsgetServerSideProps 中获取参数
    动态路由参数通过 context.params 传递:
export async function getStaticProps(context) {const { id } = context.params; // 获取动态路由参数const res = await fetch(`https://api.example.com/posts/${id}`);const post = await res.json();return { props: { post } };
}// 必须定义 getStaticPaths 来生成静态页面
export async function getStaticPaths() {return {paths: [{ params: { id: '1' } }, { params: { id: '2' } }],fallback: true, // 或 'blocking'};
}

四、高级用法

  1. 可选参数(Optional Parameters)
    使用双括号 [[...参数名]] 格式:
pages/posts/[[...slug]].js

匹配的 URL:

  • /postsslug: undefined
  • /posts/123slug: ['123']
  • /posts/123/456slug: ['123', '456']
  1. 捕获所有路径(Catch-all Routes)
    使用 [...参数名].js 格式:
pages/posts/[...slug].js

匹配的 URL:

  • /posts/123slug: ['123']
  • /posts/123/456slug: ['123', '456']

五、注意事项

  1. ‌fallback 模式‌

使用 getStaticPaths 时,若未预生成所有路径,需设置 fallback: true'blocking',并在页面处理加载状态。

  1. ‌客户端渲染与服务器渲染‌
  • 直接访问页面时(如刷新),参数会在首次渲染时存在。
  • 客户端导航时,参数可能稍后加载,需处理 router.isReady
useEffect(() => {if (router.isReady) {const { id } = router.query;}
}, [router.isReady]);
  1. 参数类型

所有参数均为字符串,需手动转换数字类型。

通过以上方法,你可以在 Next.js 12 中轻松实现动态路由、参数传递和获取。


文章转载自:

http://L2ntS9b0.xcnwf.cn
http://3ueEOg6R.xcnwf.cn
http://W0i0K4Fc.xcnwf.cn
http://p5OQYfFp.xcnwf.cn
http://BOnY29m9.xcnwf.cn
http://TIhZBPZ1.xcnwf.cn
http://wpOvEwUq.xcnwf.cn
http://DJeeqFav.xcnwf.cn
http://OGKscg1h.xcnwf.cn
http://lnvpwULq.xcnwf.cn
http://GNHa8ixh.xcnwf.cn
http://cCXbBel3.xcnwf.cn
http://Qkpb73mD.xcnwf.cn
http://WLzF6Iel.xcnwf.cn
http://hMiZ8pxi.xcnwf.cn
http://x1nXuTgH.xcnwf.cn
http://PqScyRnq.xcnwf.cn
http://87qNKk6O.xcnwf.cn
http://VkhZcwuf.xcnwf.cn
http://i7ubcu0p.xcnwf.cn
http://HZQ6JGZM.xcnwf.cn
http://05V3Tsxk.xcnwf.cn
http://HoXNnnOb.xcnwf.cn
http://dBfCX6BY.xcnwf.cn
http://meG7FYHN.xcnwf.cn
http://yX391eHL.xcnwf.cn
http://WYqRgHMF.xcnwf.cn
http://0HdDIM8H.xcnwf.cn
http://3xZFyhjq.xcnwf.cn
http://DdHSe6ZJ.xcnwf.cn
http://www.dtcms.com/wzjs/676349.html

相关文章:

  • 最好的在线网页代理网站推广优化平台
  • 目前做定制产品的网站携程旅游网站官网
  • 石岩网站设计企业培训 电子商务网站建设 图片
  • 订单查询网站怎么做wordpress提工单
  • 深圳专业网站建设要求正能量不良网站直接进入免费
  • 计算机做网站开发需要什么证书阿里国际站网站建设
  • 网站换ip注意网站开发 seo
  • 北京网站软件制作热度网络网站建设
  • 品牌网站建是啥珠海网站空间注册
  • 为什么不能用来名字做网站名百度人工服务
  • 宁波技术好的企业网站制作设计网站页面出现问题
  • 珠海哪家做企业网站公司好做数据可视化的网站
  • 手机设置管理网站做版面的网站
  • 自己电脑做网站必须装jdk设计公司网站套餐
  • 铜陵网站建设推广产品系统设计案例
  • 手机网站建设需要多少钱国内购物网站大全
  • 自己的网站如何做推广淘宝网页美工设计
  • 企业网站网页尺寸wordpress有的主题很暗
  • 培训学校网站系统商城手机网站怎么做
  • 包头建设局网站做直播网站前端
  • 做网站还需要买服务器么网页版游戏排行榜女
  • 想建设个网站怎么赚钱seo交流网
  • 快速建设网站免费视频教程东莞网站建设公司企业
  • 网站开发代理招商二级域名建立网站
  • 建站之星平台吴江区建设工程招标网站
  • 亚马逊网站运营怎么做首饰盒东莞网站建设
  • 外贸网站营销建站域名解析系统的英文缩写
  • 网站单页模板制作软件wordpress 无法注册
  • 徐汇建设机械网站个人中心页面设计图片
  • 高端网站制作 上海浙江创新网站建设销售