Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9125286

Browse files
committed
fix: patchTemplate should flush pending callbacks
Exposing flushCallbacks on Vue.__flushCallbacks__
1 parentee5086a commit9125286

File tree

5 files changed

+96
-4
lines changed

5 files changed

+96
-4
lines changed

‎package.json‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
],
1313
"typings":"index.d.ts",
1414
"scripts": {
15+
"prepare":"patch-package",
1516
"test":"jest",
1617
"tdd":"jest --watch",
1718
"dev":"npm run dev:core -- -w & npm run dev:compiler -- -w",
@@ -73,6 +74,7 @@
7374
"jest":"26.6.3",
7475
"jest-junit":"12.0.0",
7576
"lint-staged":"10.5.1",
77+
"patch-package":"^6.2.2",
7678
"prettier":"2.2.0",
7779
"rollup":"^2.33.3",
7880
"rollup-plugin-flow-no-whitespace":"1.0.0",

‎patches/vue+2.6.12.patch‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
diff --git a/node_modules/vue/src/core/util/next-tick.js b/node_modules/vue/src/core/util/next-tick.js
2+
index 2efb9a9..a0dea42 100644
3+
--- a/node_modules/vue/src/core/util/next-tick.js
4+
+++ b/node_modules/vue/src/core/util/next-tick.js
5+
@@ -10,7 +10,7 @@ export let isUsingMicroTask = false
6+
const callbacks = []
7+
let pending = false
8+
9+
-function flushCallbacks () {
10+
+export function flushCallbacks () {
11+
pending = false
12+
const copies = callbacks.slice(0)
13+
callbacks.length = 0

‎platform/nativescript/runtime/components/v-template.js‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import{patch}from'../patch'
2+
import{flushCallbacks}from'core/util/next-tick'
23

34
exportconstVUE_VIEW='__vueVNodeRef__'
45

@@ -78,6 +79,10 @@ export class TemplateBag {
7879
constnativeView=patch(oldVnode,vnode).nativeView
7980
nativeView[VUE_VIEW]=vnode
8081

82+
// force flush Vue callbacks so all changes are applied immediately
83+
// rather than on next tick
84+
flushCallbacks()
85+
8186
returnnativeView
8287
}
8388

‎platform/nativescript/runtime/index.js‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import{Application}from'@nativescript/core'
22
import{warn}from'core/util/index'
33
import{patch}from'./patch'
4+
import{flushCallbacks}from'core/util/next-tick'
45
import{mountComponent}from'core/instance/lifecycle'
56
import{compileToFunctions}from'../compiler/index'
67
import{mustUseProp,isReservedTag,isUnknownElement}from'../util/index'
@@ -16,6 +17,9 @@ Vue.config.isUnknownElement = isUnknownElement
1617

1718
Vue.$document=Vue.prototype.$document=newDocumentNode()
1819

20+
// Exposed for advanced uses only, not public API
21+
Vue.__flushCallbacks__=flushCallbacks
22+
1923
Vue.compile=compileToFunctions
2024
Vue.registerElement=registerElement
2125

‎yarn.lock‎

Lines changed: 72 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1429,7 +1429,7 @@
14291429
reduce-css-calc "^2.1.7"
14301430
tslib "~2.0.0"
14311431

1432-
"@nativescript/hook@2.0.0", "@nativescript/hook@~2.0.0":
1432+
"@nativescript/hook@~2.0.0":
14331433
version "2.0.0"
14341434
resolved "https://registry.yarnpkg.com/@nativescript/hook/-/hook-2.0.0.tgz#dbc17777d08c657efc77e263dc1ba1896d9c77b5"
14351435
integrity sha512-v3Hj3Zpd69sQJfFpDNXonV0EjO1a2OL4l48wlo1Ycsqk4r7RY822d/irFTjt0LllRG0OcdEGgfG6wKb0YgPyHw==
@@ -1666,6 +1666,11 @@
16661666
dependencies:
16671667
"@types/yargs-parser""*"
16681668

1669+
"@yarnpkg/lockfile@^1.1.0":
1670+
version "1.1.0"
1671+
resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
1672+
integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
1673+
16691674
JSONStream@^1.0.4:
16701675
version "1.3.5"
16711676
resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0"
@@ -2663,7 +2668,7 @@ cosmiconfig@^7.0.0:
26632668
path-type "^4.0.0"
26642669
yaml "^1.10.0"
26652670

2666-
cross-spawn@^6.0.0:
2671+
cross-spawn@^6.0.0, cross-spawn@^6.0.5:
26672672
version "6.0.5"
26682673
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
26692674
integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==
@@ -3258,6 +3263,14 @@ find-versions@^3.2.0:
32583263
dependencies:
32593264
semver-regex "^2.0.0"
32603265

3266+
find-yarn-workspace-root@^1.2.1:
3267+
version "1.2.1"
3268+
resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-1.2.1.tgz#40eb8e6e7c2502ddfaa2577c176f221422f860db"
3269+
integrity sha512-dVtfb0WuQG+8Ag2uWkbG79hOUzEsRrhBzgfn86g2sJPkzmcpGdghbNTfUKGTxymFrY/tLIodDzLoW9nOJ4FY8Q==
3270+
dependencies:
3271+
fs-extra "^4.0.3"
3272+
micromatch "^3.1.4"
3273+
32613274
findup-sync@^3.0.0:
32623275
version "3.0.0"
32633276
resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1"
@@ -3311,6 +3324,24 @@ fs-extra@8.1.0:
33113324
jsonfile "^4.0.0"
33123325
universalify "^0.1.0"
33133326

3327+
fs-extra@^4.0.3:
3328+
version "4.0.3"
3329+
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94"
3330+
integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==
3331+
dependencies:
3332+
graceful-fs "^4.1.2"
3333+
jsonfile "^4.0.0"
3334+
universalify "^0.1.0"
3335+
3336+
fs-extra@^7.0.1:
3337+
version "7.0.1"
3338+
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
3339+
integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==
3340+
dependencies:
3341+
graceful-fs "^4.1.2"
3342+
jsonfile "^4.0.0"
3343+
universalify "^0.1.0"
3344+
33143345
fs-extra@^9.0.0:
33153346
version "9.0.1"
33163347
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc"
@@ -3499,7 +3530,7 @@ globals@^11.1.0:
34993530
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
35003531
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
35013532

3502-
graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4:
3533+
graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4:
35033534
version "4.2.4"
35043535
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
35053536
integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==
@@ -4603,6 +4634,13 @@ kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3:
46034634
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
46044635
integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
46054636

4637+
klaw-sync@^6.0.0:
4638+
version "6.0.0"
4639+
resolved "https://registry.yarnpkg.com/klaw-sync/-/klaw-sync-6.0.0.tgz#1fd2cfd56ebb6250181114f0a581167099c2b28c"
4640+
integrity sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==
4641+
dependencies:
4642+
graceful-fs "^4.1.11"
4643+
46064644
kleur@^3.0.3:
46074645
version "3.0.3"
46084646
resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
@@ -5376,6 +5414,24 @@ pascalcase@^0.1.1:
53765414
resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
53775415
integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
53785416

5417+
patch-package@^6.2.2:
5418+
version "6.2.2"
5419+
resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-6.2.2.tgz#71d170d650c65c26556f0d0fbbb48d92b6cc5f39"
5420+
integrity sha512-YqScVYkVcClUY0v8fF0kWOjDYopzIM8e3bj/RU1DPeEF14+dCGm6UeOYm4jvCyxqIEQ5/eJzmbWfDWnUleFNMg==
5421+
dependencies:
5422+
"@yarnpkg/lockfile""^1.1.0"
5423+
chalk "^2.4.2"
5424+
cross-spawn "^6.0.5"
5425+
find-yarn-workspace-root "^1.2.1"
5426+
fs-extra "^7.0.1"
5427+
is-ci "^2.0.0"
5428+
klaw-sync "^6.0.0"
5429+
minimist "^1.2.0"
5430+
rimraf "^2.6.3"
5431+
semver "^5.6.0"
5432+
slash "^2.0.0"
5433+
tmp "^0.0.33"
5434+
53795435
path-exists@^2.0.0:
53805436
version "2.1.0"
53815437
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b"
@@ -5930,6 +5986,13 @@ ret@~0.1.10:
59305986
resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
59315987
integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==
59325988

5989+
rimraf@^2.6.3:
5990+
version "2.7.1"
5991+
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
5992+
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
5993+
dependencies:
5994+
glob "^7.1.3"
5995+
59335996
rimraf@^3.0.0:
59345997
version "3.0.2"
59355998
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
@@ -6052,7 +6115,7 @@ semver-regex@^2.0.0:
60526115
resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338"
60536116
integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==
60546117

6055-
"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0:
6118+
"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0:
60566119
version "5.7.1"
60576120
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
60586121
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
@@ -6142,6 +6205,11 @@ sisteransi@^1.0.4:
61426205
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
61436206
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
61446207

6208+
slash@^2.0.0:
6209+
version "2.0.0"
6210+
resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
6211+
integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
6212+
61456213
slash@^3.0.0:
61466214
version "3.0.0"
61476215
resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp