Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
CoCo_Code_Op2
next.js
提交
4a2236da
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,发现更多精彩内容 >>
未验证
提交
4a2236da
编写于
1月 22, 2020
作者:
J
Joe Haddad
提交者:
GitHub
1月 22, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Dedupe CSS Regexes (#10206)
上级
a3f1d65e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
9 deletion
+19
-9
packages/next/build/webpack/config/blocks/css/index.ts
packages/next/build/webpack/config/blocks/css/index.ts
+19
-9
未找到文件。
packages/next/build/webpack/config/blocks/css/index.ts
浏览文件 @
4a2236da
...
...
@@ -13,6 +13,11 @@ import {
}
from
'
./messages
'
import
{
getPostCssPlugins
}
from
'
./plugins
'
// RegExps for Stylesheets
const
regexCssAll
=
/
\.
css$/
const
regexCssGlobal
=
/
(?<
!
\.
module
)\.
css$/
const
regexCssModules
=
/
\.
module
\.
css$/
function
getClientStyleLoader
({
isDevelopment
,
assetPrefix
,
...
...
@@ -106,7 +111,7 @@ export const css = curry(async function css(
loader
({
oneOf
:
[
{
test
:
/
\.
css$/
,
test
:
regexCssAll
,
// Use a loose regex so we don't have to crawl the file system to
// find the real file name (if present).
issuer
:
{
test
:
/pages
[\\/]
_document
\.
/
},
...
...
@@ -133,7 +138,7 @@ export const css = curry(async function css(
// via the `pure` mode in `css-loader`.
sideEffects
:
false
,
// CSS Modules are activated via this specific extension.
test
:
/
\.
module
\.
css$/
,
test
:
regexCssModules
,
// CSS Modules are only supported in the user's application. We're
// not yet allowing CSS imports _within_ `node_modules`.
issuer
:
{
...
...
@@ -191,7 +196,7 @@ export const css = curry(async function css(
loader
({
oneOf
:
[
{
test
:
/
\.
module
\.
css$/
,
test
:
regexCssModules
,
use
:
{
loader
:
'
error-loader
'
,
options
:
{
...
...
@@ -206,7 +211,9 @@ export const css = curry(async function css(
if
(
ctx
.
isServer
)
{
fns
.
push
(
loader
({
oneOf
:
[{
test
:
/
\.
css$/
,
use
:
require
.
resolve
(
'
ignore-loader
'
)
}],
oneOf
:
[
{
test
:
regexCssGlobal
,
use
:
require
.
resolve
(
'
ignore-loader
'
)
},
],
})
)
}
else
if
(
ctx
.
customAppFile
)
{
...
...
@@ -219,7 +226,7 @@ export const css = curry(async function css(
// no side-effects.
// See https://github.com/webpack/webpack/issues/6571
sideEffects
:
true
,
test
:
/
\.
css$/
,
test
:
regexCssGlobal
,
issuer
:
{
include
:
ctx
.
customAppFile
},
use
:
[
...
...
@@ -257,7 +264,7 @@ export const css = curry(async function css(
loader
({
oneOf
:
[
{
test
:
/
\.
css$/
,
test
:
regexCssGlobal
,
issuer
:
{
include
:
[
/node_modules/
]
},
use
:
{
loader
:
'
error-loader
'
,
...
...
@@ -275,7 +282,7 @@ export const css = curry(async function css(
loader
({
oneOf
:
[
{
test
:
/
\.
css$/
,
test
:
regexCssGlobal
,
use
:
{
loader
:
'
error-loader
'
,
options
:
{
...
...
@@ -298,7 +305,7 @@ export const css = curry(async function css(
oneOf
:
[
{
// This should only be applied to CSS files
issuer
:
{
test
:
/
\.
css$/
},
issuer
:
{
test
:
regexCssAll
},
// Exclude extensions that webpack handles by default
exclude
:
[
/
\.(
js|mjs|jsx|ts|tsx
)
$/
,
/
\.
html$/
,
/
\.
json$/
],
use
:
{
...
...
@@ -323,12 +330,15 @@ export const css = curry(async function css(
new
MiniCssExtractPlugin
({
filename
:
'
static/css/[contenthash].css
'
,
chunkFilename
:
'
static/css/[contenthash].css
'
,
// Next.js guarantees that CSS order
doesn't matter
, due to imposed
// Next.js guarantees that CSS order
"doesn't matter"
, due to imposed
// restrictions:
// 1. Global CSS can only be defined in a single entrypoint (_app)
// 2. CSS Modules generate scoped class names by default and cannot
// include Global CSS (:global() selector).
//
// While not a perfect guarantee (e.g. liberal use of `:global()`
// selector), this assumption is required to code-split CSS.
//
// If this warning were to trigger, it'd be unactionable by the user,
// but also not valid -- so we disable it.
ignoreOrder
:
true
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录