Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
CoCo_Code_Op2
next.js
提交
2c75fa0d
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,发现更多精彩内容 >>
未验证
提交
2c75fa0d
编写于
1月 01, 2021
作者:
J
Joe Haddad
提交者:
GitHub
1月 01, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(source map): correctly generate source maps (#20672)
Fixes #20500
上级
9ded7aa9
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
26 addition
and
12 deletion
+26
-12
packages/next/build/webpack-config.ts
packages/next/build/webpack-config.ts
+1
-3
packages/next/build/webpack/config/blocks/base.ts
packages/next/build/webpack/config/blocks/base.ts
+2
-2
packages/next/build/webpack/plugins/terser-webpack-plugin/src/index.js
.../build/webpack/plugins/terser-webpack-plugin/src/index.js
+4
-6
test/integration/production-browser-sourcemaps/test/index.test.js
...egration/production-browser-sourcemaps/test/index.test.js
+19
-1
未找到文件。
packages/next/build/webpack-config.ts
浏览文件 @
2c75fa0d
...
...
@@ -211,8 +211,6 @@ export default async function getBaseWebpackConfig(
rewrites
:
Rewrite
[]
}
):
Promise
<
webpack
.
Configuration
>
{
const
productionBrowserSourceMaps
=
config
.
productionBrowserSourceMaps
&&
!
isServer
let
plugins
:
PluginMetaData
[]
=
[]
let
babelPresetPlugins
:
{
dir
:
string
;
config
:
any
}[]
=
[]
...
...
@@ -1216,7 +1214,7 @@ export default async function getBaseWebpackConfig(
isServer
,
assetPrefix
:
config
.
assetPrefix
||
''
,
sassOptions
:
config
.
sassOptions
,
productionBrowserSourceMaps
,
productionBrowserSourceMaps
:
config
.
productionBrowserSourceMaps
,
})
let
originalDevtool
=
webpackConfig
.
devtool
...
...
packages/next/build/webpack/config/blocks/base.ts
浏览文件 @
2c75fa0d
...
...
@@ -35,8 +35,8 @@ export const base = curry(function base(
config
.
devtool
=
'
eval-source-map
'
}
}
else
{
// Enable browser sourcemaps
if
(
ctx
.
productionBrowserSourceMaps
)
{
// Enable browser sourcemaps
:
if
(
ctx
.
productionBrowserSourceMaps
&&
ctx
.
isClient
)
{
config
.
devtool
=
'
source-map
'
}
else
{
config
.
devtool
=
false
...
...
packages/next/build/webpack/plugins/terser-webpack-plugin/src/index.js
浏览文件 @
2c75fa0d
...
...
@@ -226,11 +226,9 @@ class TerserPlugin {
return
traceAsyncFn
(
assetSpan
,
async
()
=>
{
if
(
!
output
)
{
let
inputSourceMap
const
{
source
:
sourceFromInputSource
,
map
,
map
:
inputSourceMap
,
}
=
inputSource
.
sourceAndMap
()
const
input
=
Buffer
.
isBuffer
(
sourceFromInputSource
)
...
...
@@ -240,7 +238,7 @@ class TerserPlugin {
const
options
=
{
name
,
input
,
inputSourceMap
:
map
,
inputSourceMap
,
terserOptions
:
{
...
this
.
options
.
terserOptions
},
}
...
...
@@ -337,8 +335,8 @@ class TerserPlugin {
})
const
handleHashForChunk
=
(
hash
,
chunk
)
=>
{
// increment '
b
' to invalidate cache
hash
.
update
(
'
b
'
)
// increment '
c
' to invalidate cache
hash
.
update
(
'
c
'
)
}
if
(
isWebpack5
)
{
...
...
test/integration/production-browser-sourcemaps/test/index.test.js
浏览文件 @
2c75fa0d
/* eslint-env jest */
import
fs
from
'
fs-extra
'
import
{
join
}
from
'
path
'
import
{
nextBuild
}
from
'
next-test-utils
'
import
{
nextBuild
,
getPageFileFromBuildManifest
}
from
'
next-test-utils
'
import
{
recursiveReadDir
}
from
'
next/dist/lib/recursive-readdir
'
jest
.
setTimeout
(
1000
*
60
*
2
)
...
...
@@ -24,6 +24,24 @@ function runTests() {
expect
(
browserFiles
.
includes
(
`
${
file
}
.map`
)).
toBe
(
true
)
})
})
it
(
'
correctly generated the source map
'
,
async
()
=>
{
const
map
=
JSON
.
parse
(
await
fs
.
readFile
(
join
(
appDir
,
'
.next
'
,
(
await
getPageFileFromBuildManifest
(
appDir
,
'
/static
'
))
+
'
.map
'
),
'
utf8
'
)
)
expect
(
map
.
sources
).
toContainEqual
(
expect
.
stringMatching
(
/pages
[/\\]
static
\.
js/
)
)
expect
(
map
.
names
).
toContainEqual
(
'
StaticPage
'
)
})
}
describe
(
'
Production browser sourcemaps
'
,
()
=>
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录