-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(image):支持懒加载 #3096
Merged
The head ref may contain hidden characters: "feat(image)-\u652F\u6301\u61D2\u52A0\u8F7D"
Merged
feat(image):支持懒加载 #3096
Changes from all commits
Commits
Show all changes
166 commits
Select commit
Hold shift + click to select a range
ea64917
feat:n-input Support hidden password
doom-9 149d8e6
Merge branch 'TuSimple:main' into main
doom-9-zz 8664169
Merge branch 'TuSimple:main' into main
doom-9-zz 0627777
feat(form): support require-mark-placement(#171)
doom-9 f9729c8
Revert "feat(form): support require-mark-placement(#171)"
doom-9 2566db7
Merge branch 'TuSimple:main' into main
doom-9-zz aa41027
Revert "feat:n-input Support hidden password"
doom-9 3f01195
Merge branch 'TuSimple:main' into main
doom-9-zz 076c432
Merge branch 'TuSimple:main' into main
doom-9-zz 2307ef8
Merge branch 'TuSimple:main' into main
doom-9-zz d4f08f8
Merge branch 'TuSimple:main' into main
doom-9-zz 56f6d75
Merge branch 'TuSimple:main' into main
doom-9-zz 658835d
Merge branch 'TuSimple:main' into main
doom-9-zz 3d90083
Merge branch 'TuSimple:main' into main
doom-9-zz 1e860cc
Merge branch 'TuSimple:main' into main
doom-9-zz c1c7942
Merge branch 'TuSimple:main' into main
doom-9-zz 0cb198e
Merge branch 'TuSimple:main' into main
doom-9-zz 71ad4cd
Merge branch 'TuSimple:main' into main
doom-9-zz cd8476a
Merge branch 'TuSimple:main' into main
doom-9-zz ac74273
Merge branch 'TuSimple:main' into main
doom-9-zz e685823
Merge branch 'TuSimple:main' into main
doom-9-zz 2a450f1
Merge branch 'TuSimple:main' into main
doom-9-zz b02f5f8
Merge branch 'TuSimple:main' into main
doom-9-zz 4f151e7
Merge branch 'TuSimple:main' into main
doom-9-zz b8cf341
Merge branch 'TuSimple:main' into main
doom-9-zz c7fa132
Merge branch 'TuSimple:main' into main
doom-9-zz d7348e6
Merge branch 'TuSimple:main' into main
doom-9-zz c504c72
Merge branch 'TuSimple:main' into main
doom-9-zz c14f943
Merge branch 'TuSimple:main' into main
doom-9-zz 23da897
Merge branch 'TuSimple:main' into main
doom-9-zz eb86273
Merge branch 'TuSimple:main' into main
doom-9-zz ba7fdda
Merge branch 'TuSimple:main' into main
doom-9-zz 51430c2
Merge branch 'TuSimple:main' into main
doom-9-zz f25cbf3
Merge branch 'TuSimple:main' into main
doom-9-zz bfdf90f
Merge branch 'TuSimple:main' into main
doom-9-zz 36939e1
Merge branch 'TuSimple:main' into main
doom-9-zz 244ea96
Merge branch 'TuSimple:main' into main
doom-9-zz a445262
Merge branch 'TuSimple:main' into main
doom-9-zz 43a5740
Merge branch 'TuSimple:main' into main
doom-9-zz 8c53a25
Merge branch 'TuSimple:main' into main
doom-9-zz bdddc47
Merge branch 'TuSimple:main' into main
doom-9-zz c4b7311
Merge branch 'TuSimple:main' into main
doom-9-zz 3ac6a8a
Merge branch 'TuSimple:main' into main
doom-9-zz 9c59190
Merge branch 'TuSimple:main' into main
doom-9-zz 988f21f
Merge branch 'TuSimple:main' into main
doom-9-zz f6a3a9c
Merge branch 'TuSimple:main' into main
doom-9-zz c1e42a7
Merge branch 'TuSimple:main' into main
doom-9-zz 4e65da9
Merge branch 'TuSimple:main' into main
doom-9-zz bd7b76c
Merge branch 'TuSimple:main' into main
doom-9-zz 22576d3
Merge branch 'TuSimple:main' into main
doom-9-zz a3e4ecb
Merge branch 'TuSimple:main' into main
doom-9-zz 89b4729
Merge branch 'TuSimple:main' into main
doom-9-zz c603d61
Merge branch 'TuSimple:main' into main
doom-9-zz 4536c5a
Merge branch 'TuSimple:main' into main
doom-9-zz b9b72a4
Merge branch 'TuSimple:main' into main
doom-9-zz 69ef0b6
Merge branch 'TuSimple:main' into main
doom-9-zz 2f3f242
Merge branch 'TuSimple:main' into main
doom-9-zz cde10b4
Merge branch 'TuSimple:main' into main
doom-9-zz 3d370f7
Merge branch 'TuSimple:main' into main
doom-9-zz 182f166
Merge branch 'TuSimple:main' into main
doom-9-zz b9ac1d9
Merge branch 'TuSimple:main' into main
doom-9-zz a77df05
Merge branch 'TuSimple:main' into main
doom-9-zz 59de411
Merge branch 'TuSimple:main' into main
doom-9-zz 1d21533
Merge branch 'TuSimple:main' into main
doom-9-zz ae2e706
Merge branch 'TuSimple:main' into main
doom-9-zz 4a93636
Merge branch 'TuSimple:main' into main
doom-9-zz f5f59c5
Merge branch 'TuSimple:main' into main
doom-9-zz de2aa61
Merge branch 'TuSimple:main' into main
doom-9-zz e9c17d4
Merge branch 'TuSimple:main' into main
doom-9-zz 4b88be4
Merge branch 'TuSimple:main' into main
doom-9-zz ddb72e0
Merge branch 'TuSimple:main' into main
doom-9-zz 2fc986b
Merge branch 'TuSimple:main' into main
doom-9-zz 80a016c
Merge branch 'TuSimple:main' into main
doom-9-zz d2afcd9
Merge branch 'TuSimple:main' into main
doom-9-zz a1ebf69
Merge branch 'TuSimple:main' into main
doom-9-zz 98c953c
Merge branch 'TuSimple:main' into main
doom-9-zz 2c759c4
Merge branch 'TuSimple:main' into main
doom-9-zz ede7006
Merge branch 'TuSimple:main' into main
doom-9-zz d49332c
Merge branch 'TuSimple:main' into main
doom-9-zz 4849399
Merge branch 'TuSimple:main' into main
doom-9-zz 2cab16e
Merge branch 'TuSimple:main' into main
doom-9-zz 2a54fd7
Merge branch 'TuSimple:main' into main
doom-9-zz f302028
Merge branch 'TuSimple:main' into main
doom-9-zz 8ba779c
Merge branch 'TuSimple:main' into main
doom-9-zz 1b770b3
Merge branch 'TuSimple:main' into main
doom-9-zz 40395dc
Merge branch 'TuSimple:main' into main
doom-9-zz 74e65b8
Merge branch 'TuSimple:main' into main
doom-9-zz dc31190
Merge branch 'TuSimple:main' into main
doom-9-zz f23518f
Merge branch 'TuSimple:main' into main
doom-9-zz 1af12fb
Merge branch 'TuSimple:main' into main
doom-9-zz 536c07b
Merge branch 'TuSimple:main' into main
doom-9-zz 52f8b2a
Merge branch 'TuSimple:main' into main
doom-9-zz 983be14
Merge branch 'TuSimple:main' into main
doom-9-zz 0f27d13
Merge branch 'TuSimple:main' into main
doom-9-zz 89b56c7
Merge branch 'TuSimple:main' into main
doom-9-zz beaa1df
Merge branch 'TuSimple:main' into main
doom-9-zz 7295d08
Merge branch 'TuSimple:main' into main
doom-9-zz 15114a1
test(dialog): Update dialog component test (#1404)
songjianet 9912c91
test(data-table): update test (#1411)
XieZongChen 127928e
Merge branch 'TuSimple:main' into main
doom-9-zz d5583a7
fix
doom-9 97e20de
Merge branch 'TuSimple:main' into main
doom-9-zz 87e531d
Merge branch 'TuSimple:main' into main
doom-9-zz d91cb3f
Merge branch 'TuSimple:main' into main
doom-9-zz c57bf86
Merge branch 'TuSimple:main' into main
doom-9-zz e8d8fab
Merge branch 'TuSimple:main' into main
doom-9-zz 2b9824d
Merge branch 'TuSimple:main' into main
doom-9-zz 20f683c
Merge branch 'TuSimple:main' into main
doom-9-zz 63635cd
Merge branch 'TuSimple:main' into main
doom-9-zz 30ea08c
Merge branch 'TuSimple:main' into main
doom-9-zz 1918226
Merge branch 'TuSimple:main' into main
doom-9-zz 5f8c96f
Merge branch 'TuSimple:main' into main
doom-9-zz 9a6ac51
Merge branch 'TuSimple:main' into main
doom-9-zz da45f6c
Merge branch 'TuSimple:main' into main
doom-9-zz e08c254
Merge branch 'TuSimple:main' into main
doom-9-zz d5e6679
Merge branch 'TuSimple:main' into main
doom-9-zz 4699d9f
Merge branch 'TuSimple:main' into main
doom-9-zz c4707dc
Merge branch 'TuSimple:main' into main
doom-9-zz 6919c6c
Merge branch 'TuSimple:main' into main
doom-9-zz 94403a8
Merge branch 'TuSimple:main' into main
doom-9-zz 8204e90
Merge branch 'TuSimple:main' into main
doom-9-zz c5e40fb
Merge branch 'TuSimple:main' into main
doom-9-zz f9035bc
Merge branch 'TuSimple:main' into main
doom-9-zz 438bec7
Merge branch 'TuSimple:main' into main
doom-9-zz b281775
Merge branch 'TuSimple:main' into main
doom-9-zz fc00eaf
Merge branch 'TuSimple:main' into main
doom-9-zz d9b2067
Merge branch 'TuSimple:main' into main
doom-9-zz f62ec45
Merge branch 'TuSimple:main' into main
doom-9-zz 646418f
Merge branch 'TuSimple:main' into main
doom-9-zz c682f90
Merge branch 'TuSimple:main' into main
doom-9-zz 631d846
Merge branch 'TuSimple:main' into main
doom-9-zz 449d771
Merge branch 'TuSimple:main' into main
doom-9-zz 168a24d
Merge branch 'TuSimple:main' into main
doom-9-zz 9a296ef
Merge branch 'TuSimple:main' into main
doom-9-zz e69e5e9
Merge branch 'TuSimple:main' into main
doom-9-zz 229a136
Merge branch 'TuSimple:main' into main
doom-9-zz fd68aab
Merge branch 'TuSimple:main' into main
doom-9-zz 3f21720
Merge branch 'TuSimple:main' into main
doom-9-zz 1d91714
Merge branch 'TuSimple:main' into main
doom-9-zz d3728bb
Merge branch 'TuSimple:main' into main
doom-9-zz cec0867
Merge branch 'TuSimple:main' into main
doom-9-zz 30b8e52
Merge branch 'TuSimple:main' into main
doom-9-zz 98ba9f0
Merge branch 'TuSimple:main' into main
doom-9-zz 9ddfde6
Merge branch 'TuSimple:main' into main
doom-9-zz 30a4819
Merge branch 'TuSimple:main' into main
doom-9-zz 07e3fb4
Merge branch 'TuSimple:main' into main
doom-9-zz acd3c73
Merge branch 'TuSimple:main' into main
doom-9-zz 03897f0
Merge branch 'TuSimple:main' into main
doom-9-zz 0212945
Merge branch 'TuSimple:main' into main
doom-9-zz be9c55b
Merge branch 'TuSimple:main' into main
doom-9-zz f12e8e1
Merge branch 'TuSimple:main' into main
doom-9-zz de30051
Merge branch 'TuSimple:main' into main
doom-9-zz bf19e4f
Merge branch 'TuSimple:main' into main
doom-9-zz 99fde1b
Merge branch 'TuSimple:main' into main
doom-9-zz db78827
Merge branch 'TuSimple:main' into main
doom-9-zz 8899d04
Merge branch 'TuSimple:main' into main
doom-9-zz 6bd4caf
Merge branch 'TuSimple:main' into main
doom-9-zz fbb5797
Merge branch 'TuSimple:main' into main
doom-9-zz 674f4ba
Merge branch 'TuSimple:main' into main
doom-9-zz b833f25
图片懒加载
doom-9-zz e757830
添加debug
doom-9-zz f5d06fc
完善
doom-9-zz 291d814
添加demo文件
doom-9-zz 9c7ba37
changelog
doom-9-zz 9ba60d0
更新DOM后才开始执行
doom-9-zz 21bcc0d
Merge branch 'main' into feat(image)-支持懒加载
07akioni File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,6 +11,7 @@ error.vue | |
preview-disabled.vue | ||
custom.vue | ||
tooltip.vue | ||
lazy.vue | ||
``` | ||
|
||
## API | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<markdown> | ||
# lazyLoad | ||
</markdown> | ||
|
||
<template> | ||
<n-image | ||
v-for="(item, index) in Array(50)" | ||
:key="index" | ||
width="100" | ||
src="https://07akioni.oss-cn-beijing.aliyuncs.com/07akioni.jpeg" | ||
lazy | ||
:lazy-options="{ | ||
root: '.n-layout--static-positioned' | ||
}" | ||
/> | ||
</template> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -12,6 +12,7 @@ preview-disabled.vue | |
custom.vue | ||
tooltip.vue | ||
full-debug.vue | ||
lazy.vue | ||
``` | ||
|
||
## API | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<markdown> | ||
# 懒加载 | ||
</markdown> | ||
|
||
<template> | ||
<n-image | ||
v-for="(item, index) in Array(50)" | ||
:key="index" | ||
width="100" | ||
src="https://07akioni.oss-cn-beijing.aliyuncs.com/07akioni.jpeg" | ||
lazy | ||
:lazy-options="{ | ||
root: '.n-layout--static-positioned' | ||
}" | ||
/> | ||
</template> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
let imgObserver: IntersectionObserver | null = null | ||
|
||
let imgObserverOptions: { | ||
root: HTMLElement | null | ||
} | null | ||
|
||
const imgObserverCallback: IntersectionObserverCallback = (entries) => { | ||
entries.forEach((entry) => { | ||
if (entry.isIntersecting) { | ||
const img = entry.target as HTMLImageElement | ||
if (!img.src) { | ||
img.src = img.dataset.src || '' | ||
} | ||
} | ||
}) | ||
} | ||
|
||
export const imgObserverHandler: ( | ||
el: HTMLImageElement | null, | ||
root?: string | ||
) => void = (el, root = 'body') => { | ||
if (el === null) return | ||
if (imgObserver === null) { | ||
imgObserverOptions = { | ||
root: document.querySelector(root) | ||
} | ||
imgObserver = new IntersectionObserver( | ||
imgObserverCallback, | ||
imgObserverOptions | ||
) | ||
} | ||
imgObserver.observe(el) | ||
} | ||
|
||
export const imgUnobserverHandler: (el: HTMLImageElement | null) => void = ( | ||
el | ||
) => { | ||
if (el === null) return | ||
if (imgObserver) { | ||
imgObserver.unobserve(el) | ||
} | ||
} |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
如果一开始 lazy 最后不 lazy 就泄漏了