Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
CoCo_Code_Op2
next.js
提交
0bc07603
N
next.js
项目概览
CoCo_Code_Op2
/
next.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
N
next.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
0bc07603
编写于
5月 10, 2020
作者:
M
Maxi Gimenez
提交者:
GitHub
5月 10, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore(next): link/router/document missing types (#12692)
上级
ce830af2
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
15 addition
and
15 deletion
+15
-15
packages/next/client/link.tsx
packages/next/client/link.tsx
+8
-8
packages/next/client/router.ts
packages/next/client/router.ts
+3
-3
packages/next/pages/_document.tsx
packages/next/pages/_document.tsx
+4
-4
未找到文件。
packages/next/client/link.tsx
浏览文件 @
0bc07603
...
...
@@ -11,7 +11,7 @@ import {
import
Router
from
'
./router
'
import
{
addBasePath
}
from
'
../next-server/lib/router/router
'
function
isLocal
(
href
:
string
)
{
function
isLocal
(
href
:
string
)
:
boolean
{
const
url
=
parse
(
href
,
false
,
true
)
const
origin
=
parse
(
getLocationOrigin
(),
false
,
true
)
...
...
@@ -40,7 +40,7 @@ function memoizedFormatUrl(formatFunc: (href: Url, as?: Url) => FormatResult) {
}
}
function
formatUrl
(
url
:
Url
)
{
function
formatUrl
(
url
:
Url
)
:
string
{
return
url
&&
typeof
url
===
'
object
'
?
formatWithValidation
(
url
)
:
url
}
...
...
@@ -60,7 +60,7 @@ const IntersectionObserver =
typeof
window
!==
'
undefined
'
?
window
.
IntersectionObserver
:
null
const
prefetched
:
{
[
cacheKey
:
string
]:
boolean
}
=
{}
function
getObserver
()
{
function
getObserver
()
:
IntersectionObserver
|
undefined
{
// Return shared instance of IntersectionObserver if already created
if
(
observer
)
{
return
observer
...
...
@@ -125,11 +125,11 @@ class Link extends Component<LinkProps> {
cleanUpListeners
=
()
=>
{}
componentWillUnmount
()
{
componentWillUnmount
()
:
void
{
this
.
cleanUpListeners
()
}
getPaths
()
{
getPaths
()
:
string
[]
{
const
{
pathname
}
=
window
.
location
const
{
href
:
parsedHref
,
as
:
parsedAs
}
=
this
.
formatUrls
(
this
.
props
.
href
,
...
...
@@ -139,7 +139,7 @@ class Link extends Component<LinkProps> {
return
[
resolvedHref
,
parsedAs
?
resolve
(
pathname
,
parsedAs
)
:
resolvedHref
]
}
handleRef
(
ref
:
Element
)
{
handleRef
(
ref
:
Element
)
:
void
{
if
(
this
.
p
&&
IntersectionObserver
&&
ref
&&
ref
.
tagName
)
{
this
.
cleanUpListeners
()
...
...
@@ -167,7 +167,7 @@ class Link extends Component<LinkProps> {
}
})
linkClicked
=
(
e
:
React
.
MouseEvent
)
=>
{
linkClicked
=
(
e
:
React
.
MouseEvent
)
:
void
=>
{
const
{
nodeName
,
target
}
=
e
.
currentTarget
as
HTMLAnchorElement
if
(
nodeName
===
'
A
'
&&
...
...
@@ -212,7 +212,7 @@ class Link extends Component<LinkProps> {
})
}
prefetch
(
options
?:
PrefetchOptions
)
{
prefetch
(
options
?:
PrefetchOptions
)
:
void
{
if
(
!
this
.
p
||
typeof
window
===
'
undefined
'
)
return
// Prefetch the JSON page if asked (only in the client)
const
paths
=
this
.
getPaths
()
...
...
packages/next/client/router.ts
浏览文件 @
0bc07603
...
...
@@ -104,7 +104,7 @@ routerEvents.forEach(event => {
})
})
function
getRouter
()
{
function
getRouter
()
:
Router
{
if
(
!
singletonRouter
.
router
)
{
const
message
=
'
No router instance found.
\n
'
+
...
...
@@ -120,7 +120,7 @@ export default singletonRouter as SingletonRouter
// Reexport the withRoute HOC
export
{
default
as
withRouter
}
from
'
./with-router
'
export
function
useRouter
()
{
export
function
useRouter
()
:
NextRouter
{
return
React
.
useContext
(
RouterContext
)
}
...
...
@@ -131,7 +131,7 @@ export function useRouter() {
// Create a router and assign it as the singleton instance.
// This is used in client side when we are initilizing the app.
// This should **not** use inside the server.
export
const
createRouter
=
(...
args
:
RouterArgs
)
=>
{
export
const
createRouter
=
(...
args
:
RouterArgs
)
:
Router
=>
{
singletonRouter
.
router
=
new
Router
(...
args
)
singletonRouter
.
readyCallbacks
.
forEach
(
cb
=>
cb
())
singletonRouter
.
readyCallbacks
=
[]
...
...
packages/next/pages/_document.tsx
浏览文件 @
0bc07603
...
...
@@ -37,7 +37,7 @@ function dedupe(bundles: any[]): any[] {
return
kept
}
function
getOptionalModernScriptVariant
(
path
:
string
)
{
function
getOptionalModernScriptVariant
(
path
:
string
)
:
string
{
if
(
process
.
env
.
__NEXT_MODERN_BUILD
)
{
return
path
.
replace
(
/
\.
js$/
,
'
.module.js
'
)
}
...
...
@@ -626,7 +626,7 @@ export class NextScript extends Component<OriginProps> {
))
}
static
getInlineScriptSource
(
documentProps
:
DocumentProps
)
{
static
getInlineScriptSource
(
documentProps
:
DocumentProps
)
:
string
{
const
{
__NEXT_DATA__
}
=
documentProps
try
{
const
data
=
JSON
.
stringify
(
__NEXT_DATA__
)
...
...
@@ -821,11 +821,11 @@ export class NextScript extends Component<OriginProps> {
}
}
function
getAmpPath
(
ampPath
:
string
,
asPath
:
string
)
{
function
getAmpPath
(
ampPath
:
string
,
asPath
:
string
)
:
string
{
return
ampPath
||
`
${
asPath
}${
asPath
.
includes
(
'
?
'
)
?
'
&
'
:
'
?
'
}
amp=1`
}
function
getPageFile
(
page
:
string
,
buildId
?:
string
)
{
function
getPageFile
(
page
:
string
,
buildId
?:
string
)
:
string
{
const
startingUrl
=
page
===
'
/
'
?
'
/index
'
:
page
return
buildId
?
`
${
startingUrl
}
.
${
buildId
}
.js`
:
`
${
startingUrl
}
.js`
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录