profile
viewpoint
Eduardo San Martin Morote posva Freelance Paris https://esm.dev Member of the @vuejs core team Speaker, trainer. From 🇪🇸, lives in 🇫🇷

posva/catimg 815

🦦 Insanely fast image printing in your terminal

Gozala/selfish 158

Class-free, pure prototypal inheritance

brillout/awesome-vue-refactor 27

A curated list of awesome things related to Vue.js

ArthurSonzogni/CppBot 15

Portable C++ tools for bot creations : keyboard and mouse event generations, screen capture !

posva/clipboard-text 11

Simple and small copy-text-to-the-clipboard-utility with IE11 support

posva/configure-script 2

:zap: Simple script to generate Makefiles for your project. It's mainly aimed for C/C++ but can be adapted to other languages

bemug/spark-make 1

A Spark implementation of distributed Makefile

posva/2d-collisions 1

Collision for 2D using the SAT theorem with Rectangles

issue commentvuejs/vue

vue-server-renderer security advisory

So you didn't look at first like you said? I took the time to link the issues each time. Searching for serialize-javascript in issues gives you the results 🙂

zoellner

comment created time in 2 hours

issue commentvuejs/vue

vue-server-renderer security advisory

There are many... https://github.com/vuejs/vue/issues?q=is%3Aissue+serialize+is%3Aclosed You even downvoted my comment at https://github.com/vuejs/vue/issues/11427

Screenshot 2020-08-11 at 20 54 02

So you deliberately opened a duplicate issue. An issue or a PR have the same tracking and discussions abilities

zoellner

comment created time in 3 hours

issue closedvuejs/vue

vue-server-renderer security advisory

Version

2.6.11

Reproduction link

https://codesandbox.io/s/naughty-shape-p1plw?fontsize=14&hidenavigation=1&theme=dark

Steps to reproduce

npm install vue-server-renderer 
npm audit

What is expected?

Audit passes

What is actually happening?

┌──────────────────────────────────────────────────────────────────────────────┐
│                                Manual Review                                 │
│            Some vulnerabilities require your attention to resolve            │
│                                                                              │
│         Visit https://go.npm.me/audit-guide for additional guidance          │
└──────────────────────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ High          │ Remote Code Execution                                        │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ serialize-javascript                                         │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in    │ >=3.1.0                                                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ vue-server-renderer                                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ vue-server-renderer > serialize-javascript                   │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://npmjs.com/advisories/1548                            │

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 hours

zoellner

issue commentvuejs/vue

vue-server-renderer security advisory

https://github.com/vuejs/vue/pull/11434

Don't open automated issues

zoellner

comment created time in 3 hours

issue commentvuejs/vue-router-next

$route and $router type declarations seem to be missing in distributed declaration file

It looks like there is a bug in api-extractor https://github.com/microsoft/rushstack/issues/2090 https://github.com/microsoft/rushstack/issues/1709

I wonder if we can find a workaround in the mean time that isn't appending the content to the final d.ts file

Aurelius333

comment created time in 4 hours

push eventvuejs/vue-router

Eduardo San Martin Morote

commit sha ec43c1eebaf5d50856a9c0d5c8c92c0fb56665dc

build: bundle 3.4.3

view details

Eduardo San Martin Morote

commit sha dcde7270a3178b79e8344c54cc17ce81ca088d60

chore(release): 3.4.3

view details

Eduardo San Martin Morote

commit sha 3047798a55d61cc43f6ad5447364459f121f7586

chore(changelog): 3.4.3

view details

push time in 6 hours

created tagvuejs/vue-router

tagv3.4.3

🚦 The official router for Vue.js.

created time in 6 hours

push eventposva/path-rank-tester

Eduardo San Martin Morote

commit sha 3ff7279e91e5d368e9349a6ae6c6c6fb89d8d5c3

globalOptions

view details

push time in 7 hours

issue commentvuejs/vue

Component's slot is selecting value from <select multiple>

it's

"vModel": { },

Remember to use the forum or the Discord chat to ask questions!

Herz3h

comment created time in 7 hours

push eventposva/path-rank-tester

Eduardo San Martin Morote

commit sha f5d9b97c98e26b13c2234aa225ed5a761738358f

add focus-trap again

view details

push time in 8 hours

issue commentvuejs/vue

Component's slot is selecting value from <select multiple>

you need to give it to the select, the element, not the component. This is a browser specific behavior but in practice you give the select a v-model

I can't pass multiple as a prop in my whole application (using symfony forms, which generates form automatically and adds multiple when specified in server side).

You only need to change select2 component and add it

Herz3h

comment created time in 8 hours

issue closedvuejs/vue

Component's slot is selecting value from <select multiple>

Version

2.6.11

Reproduction link

https://jsfiddle.net/sq589fnj/

Steps to reproduce

Check jsfiddle for default select tag and custom select component

What is expected?

It should not select any value by default as is the case for default: <select multiple>

What is actually happening?

It selects first value by default after slot is being 'replaced'

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 8 hours

Herz3h

issue commentvuejs/vue

Component's slot is selecting value from <select multiple>

This is due to the multiple attribute being passed to the component. Give the select a v-model to display the correct option or pass multiple directly to the select element inside select2 with a prop or using inheritAttrs: false + v-bind="$attrs" inside select2

Herz3h

comment created time in 8 hours

issue commentvuejs/vue-router

The "mounted" hook of the cached parent component is called a second time after the child component mounted in the nested router-view

by setting the key to path you are forcing its mounting. As said add the key to the nested router-view instead if you don't want that

stovberpv

comment created time in 8 hours

issue closedvuejs/vue-next

Firestore DocumentReferce produces "Uncaught (in promise) TypeError: cyclic object value"

Version

3.0.0-rc.5

Reproduction link

https://codesandbox.io/s/sharp-shape-kvudh?file=/src/App.vue:883-910

Steps to reproduce

  • fix codesandbox ref error
  • add firestore project
  • run code

What is expected?

the array should be loaded normally... I guess... and be displayed

What is actually happening?

an error occures


  • sorry, this issue-report is a little bit lazy 😅
  • The same error occures when trying to push an objects containing a firebase.firestore.DocumentReference to an ref([]). [Vue warn]: Unhandled error during execution of render function at <ProjectSelection onVnodeMounted=fn<onVnodeMounted> onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< Proxy { <target>: {…}, <handler>: {…} }

at <RouterView> at <App> runtime-core.esm-bundler.js:38 [Vue warn]: Unhandled error during execution of scheduler flush. This is likely a Vue internals bug. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/vue-next at <ProjectSelection onVnodeMounted=fn<onVnodeMounted> onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< Proxy { <target>: {…}, <handler>: {…} }

at <RouterView> at <App> runtime-core.esm-bundler.js:38 Uncaught (in promise) TypeError: cyclic object value node_modules shared.esm-bundler.js:399 render ProjectSelection.vue:3 node_modules runtime-core.esm-bundler.js:594 node_modules runtime-core.esm-bundler.js:4254 node_modules

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 8 hours

Septias

issue commentvuejs/vue-next

Firestore DocumentReferce produces "Uncaught (in promise) TypeError: cyclic object value"

When reporting a bug please make sure the reproduction is runnable and boiled down (no Firebase).

The error suggests you have a cyclic reference in your object (the object references itself). Marking the data as raw with markRaw should also work but it won't be reactive. You can use a shallowRef to make it reactive at the first level only. Otherwise you will have to locate the cyclic reference and mark it as non enumerable or remove it

Septias

comment created time in 8 hours

issue commentposva/vite-tailwind-starter

Error in Codesandbox

Thank you Sara!

web2033

comment created time in 8 hours

issue closedvuejs/vue-next

Additional variable in template influences on style merging behaviour

Version

3.0.0-rc.5

Reproduction link

https://codepen.io/MissedWarrior/pen/PoNqyWx

Steps to reproduce

  1. Click "Toggle" button several times
  2. Uncomment div block with backgroundColor variable
  3. Click "Toggle" button several times after compilation

What is expected?

Behaviour is similar

What is actually happening?

In first case color is switching from red to white, in second case color is always red

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 11 hours

MissedWarrior

issue commentvuejs/vue-next

Additional variable in template influences on style merging behaviour

Tested using the fiddle with the latest Vue 3 at #1828 and it works. (Note you have to use backgroundColor: 'blue' instead of background

MissedWarrior

comment created time in 11 hours

issue closedvuejs/vue-next

background + backgroundColor in style binding conflict

Version

3.0.0-rc.5

Reproduction links

https://jsfiddle.net/sy6qt3ce/

Steps to reproduce

In provided pens click on "Toggle" button several times

What is expected?

Background Color to toggle between blue and red

What is actually happening?

Background color is removed after 2 toggles

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 11 hours

MissedWarrior

issue commentvuejs/vue-next

background + backgroundColor in style binding conflict

Ah, never mind, I found the original problem: https://github.com/vuejs/vue/issues/7756, it's a wont fix. Using backgroundColor in the provided jsfiddle works

MissedWarrior

comment created time in 11 hours

issue commentvuejs/vue-next

Vue 3's style merging behaviour different to Vue 2

The vue version in codepen is really outdated. The version you provided seems to work well: https://jsfiddle.net/z5239asg/ But I found a different problem with https://jsfiddle.net/sy6qt3ce/ Removing the watcher shows a different behavior as well. I'm updating the issue to reflect the problem, which made me realize a similar problem exists in Vue 2...

MissedWarrior

comment created time in 11 hours

issue closedvuejs/vue

watch or v-model of child changing the parent data value

Version

2.6.11

Reproduction link

https://codepen.io/erwin123/pen/qBZOqXj

Steps to reproduce

On codepen, I try to create parent and child, parent has own data dan child has a props and local-data. child also has watcher to watch props value which supplied from parent. but when I manipulate the child local data, the parent data value's also changed.

I was checked this problem since 2.5.0. Just change the version on codepen if want to back to old version

What is expected?

data on parent should not change when child manipulate data by props.

What is actually happening?

data on parent changed

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 11 hours

erwinant

issue commentvuejs/vue

watch or v-model of child changing the parent data value

This is expected with objects because they're passed as references. See https://vuejs.org/v2/guide/components-props.html#One-Way-Data-Flow

erwinant

comment created time in 11 hours

issue closedvuejs/vue-next

can not separate Props defination for defineComponent

Version

3.0.0-rc.5

Reproduction link

https://github.com/Jokcy/vue3-props-define-issue

Steps to reproduce

yarn npx gulp compile

What is expected?

compile success

What is actually happening?

compile error:

lib/index.tsx(13,24): error TS2532: Object is possibly 'undefined'.
TypeScript: 1 semantic error
TypeScript: emit succeeded (with errors)

I only find a way to solve this:

const Props = { ... } as const

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 14 hours

Jokcy

issue commentvuejs/vue-next

can not separate Props defination for defineComponent

This is related to how TS works, the as const is necessary in this case because you took the props object outside of defineComponent

Jokcy

comment created time in 14 hours

issue closedvuejs/vue-next

provide can't effect in async setup

Version

3.0.0-rc.5

Reproduction link

https://codepen.io/obqun/pen/zYqvrWg

Steps to reproduce

// parent.vue
export default {
  async setup() {
    const { body : { data } } = await axios(...)
    provide('name',data)
  }
}

// childen.vue
export default{
  setup() {
    const data = inject('name');
    console.log(data) //undefine
  }
}

What is expected?

console.log(data) //data

What is actually happening?

console.log(data) //undefine

In general setup,provide works ok.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 14 hours

OBQun

issue commentvuejs/vue-next

provide can't effect in async setup

Duplicate of https://github.com/vuejs/vue-next/issues/1409

OBQun

comment created time in 14 hours

issue commentvuejs/vue-next

Provide a way to pass modelModifiers to a native input

Do you mean being able to write

<input v-model="model" v-bind="{ modelModifiers }">
pearofducks

comment created time in 14 hours

issue commentvuejs/vue-router

The "mounted" hook of the cached parent component is called a second time after the child component mounted in the nested router-view

this is normal because you are passing a key to the root instead of the nested router-view

stovberpv

comment created time in 14 hours

issue closedvuejs/vue-router

The "mounted" hook of the cached parent component is called a second time after the child component mounted in the nested router-view

Version

3.3.4

Reproduction link

https://codesandbox.io/s/oribo

Steps to reproduce

  1. Open console.
  2. Go to Parent.
  3. Go to ChildA.
  4. Go to ChildB.
  5. Go to ChildC.

What is expected?

keep-alive Parent component mounted once.

What is actually happening?

The already mounted parent component mounted a second time after mounting the child component in the nested router-view.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 14 hours

stovberpv

issue closedvuejs/vue

Options to remove whitespace between HTML Tags and Mustache

Version

2.6.11

Reproduction link

https://codesandbox.io/s/clever-sammet-51l0g?file=/src/components/HelloWorld.vue

Steps to reproduce

I have template code like below, and I have set vue-loader's option compilerOptions.whitespace = "condense";

  <div class="hello">
    <button>
      {{ msg }}
    </button>
  </div>

What is expected?

no whitespace output between <button> and {{ msg }}.

What is actually happening?

"vue-template-compiler" removed whitespace between HTML tags, but left whitespaces around {{msg}}, which causes my button a bit wider than expected.


Would you please provider another option for whitespace, which can remove whitespaces between tags and Mustache?

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 14 hours

jzz4012650

issue commentvuejs/vue

Options to remove whitespace between HTML Tags and Mustache

Duplicate of https://github.com/vuejs/vue/issues/11359

jzz4012650

comment created time in 14 hours

issue closedvuejs/vue-next

Parent and child components both sending `@submit` event

Version

3.0.0-rc.5

Reproduction link

https://jsfiddle.net/dapo/L81y6gth/

Steps to reproduce

Using @submit event triggers event through child(slot) and parent component

This is not an issue if a different event name is used.

What is expected?

if child emits event seems like parent shouldn't trigger it's own event too

What is actually happening?

the child emits one event, and the parent emits another.


Saw this in so: https://stackoverflow.com/questions/63341063/event-handling-change-in-vue-3-0/63346558#63346558

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

dasDaniel

issue commentvuejs/vue-next

Parent and child components both sending `@submit` event

You need to use inheritAttrs https://v3.vuejs.org/api/options-misc.html#inheritattrs

dasDaniel

comment created time in a day

push eventposva/mande

Eduardo San Martin Morote

commit sha 3e61c2abd637139f2093ae5dee2ae4ef87f37bd8

release: v0.0.23

view details

push time in a day

created tagposva/mande

tagv0.0.23

Simple, light and easy to use wrapper around fetch

created time in a day

push eventposva/mande

Eduardo San Martin Morote

commit sha c9b02d25ce4511e1611b4f38972038c144c2428e

fix(nuxt): missign cookies

view details

push time in a day

startednuxt-community/cloudinary-module

started time in a day

pull request commentposva/focus-trap-vue

WIP: Next

Nice 🎉

AlexandreBonaventure

comment created time in a day

push eventvuejs/vue-router

dependabot[bot]

commit sha 2f576639510bd746e54e86e910faaf8deffbf104

build(deps): bump prismjs from 1.17.1 to 1.21.0 (#3283) Bumps [prismjs](https://github.com/PrismJS/prism) from 1.17.1 to 1.21.0. - [Release notes](https://github.com/PrismJS/prism/releases) - [Changelog](https://github.com/PrismJS/prism/blob/master/CHANGELOG.md) - [Commits](https://github.com/PrismJS/prism/compare/v1.17.1...v1.21.0) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

push time in a day

PR merged vuejs/vue-router

build(deps): bump prismjs from 1.17.1 to 1.21.0 dependencies

Bumps prismjs from 1.17.1 to 1.21.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/PrismJS/prism/releases">prismjs's releases</a>.</em></p> <blockquote> <h2>v1.21.0</h2> <p>Release 1.21.0</p> <h2>v1.20.0</h2> <p>Release 1.20.0</p> <h2>v1.19.0</h2> <p>Release 1.19.0</p> <h2>v1.18.0</h2> <p>Release 1.18.0</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/PrismJS/prism/blob/master/CHANGELOG.md">prismjs's changelog</a>.</em></p> <blockquote> <h2>1.21.0 (2020-08-06)</h2> <h3>New components</h3> <ul> <li><strong>.ignore</strong> & <strong>.gitignore</strong> & <strong>.hgignore</strong> & <strong>.npmignore</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2481">#2481</a>) <a href="https://github.com/PrismJS/prism/commit/3fcce6fe"><code>3fcce6fe</code></a></li> <li><strong>Agda</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2430">#2430</a>) <a href="https://github.com/PrismJS/prism/commit/3a127c7d"><code>3a127c7d</code></a></li> <li><strong>AL</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2300">#2300</a>) <a href="https://github.com/PrismJS/prism/commit/de21eb64"><code>de21eb64</code></a></li> <li><strong>Cypher</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2459">#2459</a>) <a href="https://github.com/PrismJS/prism/commit/398e2943"><code>398e2943</code></a></li> <li><strong>Dhall</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2473">#2473</a>) <a href="https://github.com/PrismJS/prism/commit/649e51e5"><code>649e51e5</code></a></li> <li><strong>EditorConfig</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2471">#2471</a>) <a href="https://github.com/PrismJS/prism/commit/ed8fff91"><code>ed8fff91</code></a></li> <li><strong>HLSL</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2318">#2318</a>) <a href="https://github.com/PrismJS/prism/commit/87a5c7ae"><code>87a5c7ae</code></a></li> <li><strong>JS stack trace</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2418">#2418</a>) <a href="https://github.com/PrismJS/prism/commit/ae0327b3"><code>ae0327b3</code></a></li> <li><strong>PeopleCode</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2302">#2302</a>) <a href="https://github.com/PrismJS/prism/commit/bd4d8165"><code>bd4d8165</code></a></li> <li><strong>PureBasic</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2369">#2369</a>) <a href="https://github.com/PrismJS/prism/commit/d0c1c70d"><code>d0c1c70d</code></a></li> <li><strong>Racket</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2315">#2315</a>) <a href="https://github.com/PrismJS/prism/commit/053016ef"><code>053016ef</code></a></li> <li><strong>Smali</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2419">#2419</a>) <a href="https://github.com/PrismJS/prism/commit/22eb5cad"><code>22eb5cad</code></a></li> <li><strong>Structured Text (IEC 61131-3)</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2311">#2311</a>) <a href="https://github.com/PrismJS/prism/commit/8704cdfb"><code>8704cdfb</code></a></li> <li><strong>UnrealScript</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2305">#2305</a>) <a href="https://github.com/PrismJS/prism/commit/1093ceb3"><code>1093ceb3</code></a></li> <li><strong>WarpScript</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2307">#2307</a>) <a href="https://github.com/PrismJS/prism/commit/cde5b0fa"><code>cde5b0fa</code></a></li> <li><strong>XML doc (.net)</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2340">#2340</a>) <a href="https://github.com/PrismJS/prism/commit/caec5e30"><code>caec5e30</code></a></li> <li><strong>YANG</strong> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2467">#2467</a>) <a href="https://github.com/PrismJS/prism/commit/ed1df1e1"><code>ed1df1e1</code></a></li> </ul> <h3>Updated components</h3> <ul> <li>Markup & JSON: Added new aliases (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2390">#2390</a>) <a href="https://github.com/PrismJS/prism/commit/9782cfe6"><code>9782cfe6</code></a></li> <li>Fixed several cases of exponential backtracking (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2268">#2268</a>) <a href="https://github.com/PrismJS/prism/commit/7a554b5f"><code>7a554b5f</code></a></li> <li><strong>APL</strong> <ul> <li>Added <code>⍥</code> (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2409">#2409</a>) <a href="https://github.com/PrismJS/prism/commit/0255cb6a"><code>0255cb6a</code></a></li> </ul> </li> <li><strong>AutoHotkey</strong> <ul> <li>Added missing <code>format</code> built-in (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2450">#2450</a>) <a href="https://github.com/PrismJS/prism/commit/7c66cfc4"><code>7c66cfc4</code></a></li> <li>Improved comments and other improvements (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2412">#2412</a>) <a href="https://github.com/PrismJS/prism/commit/ddf3cc62"><code>ddf3cc62</code></a></li> <li>Added missing definitions (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2400">#2400</a>) <a href="https://github.com/PrismJS/prism/commit/4fe03676"><code>4fe03676</code></a></li> </ul> </li> <li><strong>Bash</strong> <ul> <li>Added <code>composer</code> command (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2298">#2298</a>) <a href="https://github.com/PrismJS/prism/commit/044dd271"><code>044dd271</code></a></li> </ul> </li> <li><strong>Batch</strong> <ul> <li>Fix escaped double quote (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2485">#2485</a>) <a href="https://github.com/PrismJS/prism/commit/f0f8210c"><code>f0f8210c</code></a></li> </ul> </li> <li><strong>C</strong> <ul> <li>Improved macros and expressions (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2440">#2440</a>) <a href="https://github.com/PrismJS/prism/commit/8a72fa6f"><code>8a72fa6f</code></a></li> <li>Improved macros (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2320">#2320</a>) <a href="https://github.com/PrismJS/prism/commit/fdcf7ed2"><code>fdcf7ed2</code></a></li> </ul> </li> <li><strong>C#</strong> <ul> <li>Improved pattern matching (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2411">#2411</a>) <a href="https://github.com/PrismJS/prism/commit/7f341fc1"><code>7f341fc1</code></a></li> <li>Fixed adjacent string interpolations (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2402">#2402</a>) <a href="https://github.com/PrismJS/prism/commit/2a2e79ed"><code>2a2e79ed</code></a></li> </ul> </li> <li><strong>C++</strong> <ul> <li>Added support for default comparison operator (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2426">#2426</a>) <a href="https://github.com/PrismJS/prism/commit/8e9d161c"><code>8e9d161c</code></a></li> <li>Improved class name detection (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2348">#2348</a>) <a href="https://github.com/PrismJS/prism/commit/e3fe9040"><code>e3fe9040</code></a></li> <li>Fixed <code>enum class</code> class names (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2342">#2342</a>) <a href="https://github.com/PrismJS/prism/commit/30b4e254"><code>30b4e254</code></a></li> </ul> </li> <li><strong>Content-Security-Policy</strong> <ul> <li>Fixed directives (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2461">#2461</a>) <a href="https://github.com/PrismJS/prism/commit/537a9e80"><code>537a9e80</code></a></li> </ul> </li> <li><strong>CSS</strong> <ul> <li>Improved url and added keywords (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2432">#2432</a>) <a href="https://github.com/PrismJS/prism/commit/964de5a1"><code>964de5a1</code></a></li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/PrismJS/prism/commit/187c8a607ee70c7914682870156faa31ed01f001"><code>187c8a6</code></a> 1.21.0</li> <li><a href="https://github.com/PrismJS/prism/commit/bf4f323391d546d4b2e1a388f05c512a27491e9c"><code>bf4f323</code></a> Changelog for v1.21.0 (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2507">#2507</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/8bba4880202ef6bd7a1e379fe9aebe69dd75f7be"><code>8bba488</code></a> Previewers: Fixed XSS (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2506">#2506</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/158caf52343e59a66c2351ff1d83648efe871e33"><code>158caf5</code></a> JSON: Greedy comments (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2479">#2479</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/f0f8210c1a9745c064d49bfb985544c654986b24"><code>f0f8210</code></a> Batch: Fix escaped double quote (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2485">#2485</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/649e51e56250a81dc0b0c4f5b3a4ea23e1c21834"><code>649e51e</code></a> Added support for Dhall (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2473">#2473</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/453079bf96746e0c44f90cb7cd90fcae9a5f94cc"><code>453079b</code></a> Line Numbers: Fixed class name on website</li> <li><a href="https://github.com/PrismJS/prism/commit/a0efa40bde420ac3923947be611ebe6b3f077dce"><code>a0efa40</code></a> Fixed Treeview page (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2484">#2484</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/78161d607fe7d493831ff19759aac951330134a1"><code>78161d6</code></a> VB: Added VBA alias (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2469">#2469</a>)</li> <li><a href="https://github.com/PrismJS/prism/commit/ed1df1e1208401a8b84330ecc39689fa37d0e9f6"><code>ed1df1e</code></a> Added support for YANG (<a href="https://github-redirect.dependabot.com/PrismJS/prism/issues/2467">#2467</a>)</li> <li>Additional commits viewable in <a href="https://github.com/PrismJS/prism/compare/v1.17.1...v1.21.0">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

</details>

+6 -6

0 comment

1 changed file

dependabot[bot]

pr closed time in a day

issue commentvuejs/vue-router

Pushing params without path broken in 3.4.2

Thanks for reporting and the investigation!

Flowm

comment created time in a day

issue commentvuejs/vue-router

Pushing params without path broken in 3.4.2

I reverted the change: it was fixing a feature that doesn't exist in v3

Flowm

comment created time in a day

push eventvuejs/vue-router

Eduardo San Martin Morote

commit sha bcc9ef5d143f02a7e095143410a864127e772830

Revert "fix: keep repeated params in query/hash relative locations" Closes #3289 This reverts commit 4fbaa9f7880276e661227442ef5923131a589210.

view details

push time in a day

issue closedvuejs/vue-router

Pushing params without path broken in 3.4.2

Version

3.4.2

Reproduction link

https://codepen.io/flowm/pen/xxVGYZq?editors=1011

Steps to reproduce

After updating vue-router from 3.4.1 to 3.4.2 a router.push() with only query params causes navigation to an empty path.

Clicking the "Push query" in the codepen triggers such a call which results in the root component to stop being rendered.

What is expected?

The path query params should be updated.

What is actually happening?

The path query params are updated, but the router also navigates to an empty path causing router-view to be empty after the call.


Issue seems to be caused by the different code path taken for query param updates after 4fbaa9f7880276e661227442ef5923131a589210. Reverting this commit restores the old behaviour that allows router.push() with only query params.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

Flowm

issue commentvuejs/rfcs

v-await / v-then / v-catch directives

Consider this example where we already have the user object but need to fetch the user's profile picture, we could display all the currently available data while using the await directive to show a placeholder for the image in the meantime.

It's not what I'm talking about. I'm talking about fetching the whole content and still displaying the main layout of the app while waiting for that content like airbnb, Vercel, sometimes Github, Facebook, instagram. If the v-await is at the top nothing is displayed until you get the data. or you duplicate the layout:

 <div v-await="getUser(user.id)">
layout with placeholders
        </div>
        <div v-then="{ img }">
same layout with the actual information
        </div>
CapitaineToinon

comment created time in a day

issue closedvuejs/vue-next

Dynamic attributes bleeding into successive array items when spliced

Version

3.0.0-rc.5

Reproduction link

https://github.com/ohepworthbell/vue3-dynamic-loop-bug/

Steps to reproduce

Install and launch app. Click on any of the four toasts that's not the last one

What is expected?

Single toast to be removed, other toasts to be unaffected

What is actually happening?

The succeeding array item to the one being removed is experiencing, as can best be described, a bleed of data


There is an array of objects used to create a series of toasts using a v-for loop. When a generated toast is clicked, a dynamic class is added (to transition), and the toast is then removed by splicing the array at a provided index using a setTimeout. The correct item is removed from the array.

However, the following toast within the array is also affected (it is not removed, but the dynamic class - and other dynamic attributes - are applied to this element, AFTER the previous item is spliced). It seems that data is bleeding to the successive item in the array.

Initially I suspected Vuex (as used in the demo) but testing using props and removing Vuex did not solve the problem, so seems most likely to be Vue (branch using props with same issue here: https://github.com/ohepworthbell/vue3-dynamic-loop-bug/tree/props). Adding a new item to the array after one has been removed does not resolve the issue either.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

ohepworthbell

issue commentvuejs/vue-next

Dynamic attributes bleeding into successive array items when spliced

You need to use unique keys for each toast (at https://github.com/ohepworthbell/vue3-dynamic-loop-bug/blob/props/src/App.vue#L17-L29 and anywhere they are created), otherwise they get reused by index in the array, reusing the state with the transitioning variable from the disappearing toast

ohepworthbell

comment created time in a day

issue commentvuejs/vue-next

Prevent self inject

Can you provide a boiled down repro?

CyberAP

comment created time in a day

issue closedvuejs/vue-router-next

parseQuery and stringifyQuery

Version

4.0.0-beta.6

Reproduction link

https://github.com/tomisicm/node-micro-stuff/blob/dev/bookie-front-vue3/src/router/index.ts

Steps to reproduce

I apologize for the link to minimal reproduction. I'll update it tomorrow, for now, I only provide a link to the lousy github file.

Steps: I have tried using qs in the scenario given in the docs vue-router.d.ts line 798

the example is:

parseQuery: qs.parse, stringifyQuery: qs.stringify,

I've tried using it with the following query

const query = { categories: ['Science, Fiction and Fantasy', 'Humor and Entertainment', 'Romance' ] }

the first push (categories is length 1) works. The second push also works. But the third push ( adding Romance on top of the previous two query params does not occur with the following code line

this.$router.push({ name: 'books', query: { 'categories': this.selectedCategories } })

The URL I get from qs seems ok. There is something weird going on with push?

Routing works perfectly fine without the parseQuery: qs.parse, stringifyQuery: qs.stringify

What is expected?

Expecting url to change after push occurs.

What is actually happening?

Actual url does not change. It stays the same as in "second push" when the categories array was of length 2 e.g. ?categories%5B0%5D=Romance&categories%5B1%5D=Humor%20and%20Entertainment

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

tomisicm

issue commentvuejs/vue-router-next

parseQuery and stringifyQuery

Open a new issue once you have the boiled down reproduction. Note Vue Router already supports arrays, you don't need an external library for that

tomisicm

comment created time in a day

issue closedvuejs/vue-router

Add index property to history state

What problem does this feature solve?

In browse, we can not judge whether it back or forward by history state, because the state only have key property and the key value just is a time string. if we add index property to state, we can judge.

What does the proposed API look like?

let index = 0

function genStateIndex() {
  return index  ;
}

function getStateIndex() {
  return index
}

//in push-state.js
if (replace) {
  // preserve existing history state as it could be overriden by the user
  const stateCopy = extend({}, history.state)
  stateCopy.key = getStateKey()
  //add follow codes
  stateCopy.index = getStateIndex()
  
  history.replaceState(stateCopy, '', url)
} else {
  history.pushState({
    key: setStateKey(genStateKey()),
    //add
    index: genStateIndex()
  }, '', url)
}

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

XiaopingHu

issue commentvuejs/vue-router

Add index property to history state

Duplicate of https://github.com/vuejs/vue-router/issues/2571

XiaopingHu

comment created time in a day

issue commentvuejs/vue-router

Add index property to history state

There are a few edge cases making this strategy not reliable. But you are free to add your own state to history and use it the way you want. In v4, there is a position saved in history to determine if a navigation is forward or backwards but there are cases where it cannot know.

XiaopingHu

comment created time in a day

issue commentvuejs/rfcs

v-await / v-then / v-catch directives

I don't think this is particularly useful because it only works in scenarios where you want to either display a loading placeholder or the content itself. But in practice, you still want to display parts of the UI while loading, replacing only portions of the UI with placeholders or spinners. With this approach there is no granularity. It works well on small demos but in real use cases, you rarely do it that way. Specially given the trend of placeholders that exists everywhere right now (https://github.com/michalsnik/vue-content-placeholders) that benefit from reusing an existing layout

At the end, this is just another syntax that can be worked out in plugins like https://github.com/posva/vue-promised or https://github.com/posva/vue-compose-promise

CapitaineToinon

comment created time in a day

issue commentvuejs/vue-router-next

Transition problem. _leaveCb call on null object. (Reproduction attached)

The problem seems to come from the wrapper at /p3/test. Using

<template>
  <router-view v-slot="{ Component }">
    <transition name="fade" mode="out-in">
      <component :is="Component" />
    </transition>
  </router-view>
</template>

<style scoped>
.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.1s;
}

.fade-enter-from,
.fade-leave-to {
  opacity: 0;
}
</style>

as the component for that route record removes the error. Using a wrapping div also solves the issue. Probably related to the inheriting of refs but needs more investigation

burs14

comment created time in a day

issue commentvuejs/vue-next

Question about Typescript 4

Looking at the breaking change, it looks like there won't be anything blocking to support both TS 3 and 4. It needs to be tried for sure

HakamFostok

comment created time in a day

issue closedvuejs/vue-next

Transition problem. _leaveCb call on null object

Version

3.0.0-rc.5

Reproduction link

Try create reproduction cant send code direct becaus company code. Want to see if this already known issue

Please help. Sorry english not good

Steps to reproduce

Use this to route transition. Some route work fine, some route fail. might have thing to do with nest routing

<router-view v-slot="{ Component }">
  <transition name="fade" mode="in-out">
    <component :is="Component" />
  </transition>
</router-view>

https://github.com/vuejs/vue-next/blob/48576e582c4177572c2fd1764fbca53a6a30abe2/packages/runtime-core/src/components/BaseTransition.ts#L326

Fail this line. leavingVNode is not null but leavingVNode.el is null.

What is expected?

Transition and route change work

What is actually happening?

Get error then nothing work until refresh

Browser error

Uncaught (in promise) TypeError: Cannot read property '_leaveCb' of null
    at Object.beforeEnter (vue.js:3465)
    at mountElement (vue.js:4847)
    at processElement (vue.js:4792)
    at patch (vue.js:4705)
    at componentEffect (vue.js:5178)
    at reactiveEffect (vue.js:330)
    at effect (vue.js:305)
    at setupRenderEffect (vue.js:5144)
    at mountComponent (vue.js:5102)
    at processComponent (vue.js:5058)

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in a day

burs14

issue commentvuejs/vue-next

Transition problem. _leaveCb call on null object

Open a new issue once you have a boiled down reproduction

burs14

comment created time in a day

issue closedposva/vite-tailwind-starter

Error in Codesandbox

Tried to test it on codesandbox and got an error. Any ideas?

2020-08-09_213407

closed time in 2 days

web2033

issue commentposva/vite-tailwind-starter

Error in Codesandbox

probably a bug in some of the parsers expecting import in a specific way. You should report the bug to CodeSandbox

web2033

comment created time in 2 days

push eventposva/mande

Eduardo San Martin Morote

commit sha e2757d581d5a8821bc0842d462a7832341b93f71

feat: serialize errors body in body

view details

Eduardo San Martin Morote

commit sha 93e6cb4ea81e83772aa317087158532e54d3acb9

release: v0.0.22

view details

push time in 2 days

created tagposva/mande

tagv0.0.22

Simple, light and easy to use wrapper around fetch

created time in 2 days

issue closedvuejs/vue-next

Conditionally rendered teleported component does not unmount

Version

3.0.0-rc.5

Reproduction link

https://codesandbox.io/s/cool-shape-018sv?file=/src/index.js

Steps to reproduce

  • Open the modal by clicking the "Open modal" button
  • Edit the email input field
  • Try to close the modal using the "Close modal" button

What is expected?

The modal is successfully closed by sending the event to the parent component which updates its state and unmount the modal.

What is actually happening?

When editing the email input field and then trying to close the modal, Vue throws an error indicating that an unhandled error happened during execution of scheduler flush.


The issue is only visible when using the teleport component.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 2 days

greeeg

issue commentvuejs/vue-next

Conditionally rendered teleported component does not unmount

Duplicate of https://github.com/vuejs/vue-next/issues/1813

greeeg

comment created time in 2 days

issue closedvuejs/composition-api

Route guards - beforeRouteLeave not working inside a component

image Using nuxt and composition-api plugin.

The execution is not going inside, beforeRouteLeave is never called even if is a console.log it doesn't work. The behaviour is the same if is not async.

closed time in 2 days

LorenRd

issue commentvuejs/composition-api

Route guards - beforeRouteLeave not working inside a component

beforeRoute* guards must go on view components that are associated with a route. You cannot add it to root

Closing as no reproduction has been provided and the problem likely comes from what I said above

LorenRd

comment created time in 2 days

issue closedvuejs/vue

state change in deactivated hook causes re-render

Version

2.6.11

Reproduction link

https://codesandbox.io/s/quirky-sid-198zy

Steps to reproduce

change state in deactivated hook

What is expected?

DOM should not be a re-rendered.

What is actually happening?

DOM is re-rendered.


When I change state in beforeDestroy hook, DOM is not re-rendered. However if I do the same thing in deactivate hook, DOM is re-rendered for a second, then move to the other route. I think It's definitely a bug.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 days

njh7799

issue commentvuejs/vue

state change in deactivated hook causes re-render

Duplicate of https://github.com/vuejs/vue/issues/8819

njh7799

comment created time in 3 days

pull request commentvuejs/vue-router

Make sure global onError called on abortation. Example provided. (repo)

3.x is different from 2.x There are no updates on 2.x anymore

We expect people to communicate in a more respectful way in Vue to keep things welcoming a for everybody

afwn90cj93201nixr2e1re

comment created time in 3 days

issue closedvuejs/vue

Transition removes components but allows interaction before transition is done, causing errors

Version

2.6.11

Reproduction link

https://codesandbox.io/s/vue-select-comparison-io8jv?file=/src/components/HelloWorld.vue

Steps to reproduce

  1. Click select menu
  2. Click an item
  3. Keep clicking items while the transition fades
  4. Check console

What is expected?

Clicking the transitioning item shouldn't cause errors

What is actually happening?

Clicking the transitioning item causes errors that can be seen in the console.


I think that the component is removed and it's state and state of subcomponents are removed/cleaned up, which can cause bugs. Here's the error that I see in my example:

TypeError: Cannot read property 'blur' of undefined
    at VueComponent.onAfterSelect (https://pf90u.csb.app/node_modules/vue-select/dist/vue-select.js:1:11729)

    at VueComponent.select (https://pf90u.csb.app/node_modules/vue-select/dist/vue-select.js:1:11260)

    at mousedown (https://pf90u.csb.app/node_modules/vue-select/dist/vue-select.js:2:1026)

    at invokeWithErrorHandling (eval at Eo (https://codesandbox.io/static/js/sandbox.50c3e4cdd.js:1:201658), <anonymous>:1859:26)

    at HTMLAnchorElement.invoker (eval at Eo (https://codesandbox.io/static/js/sandbox.50c3e4cdd.js:1:201658), <anonymous>:2184:14)

    at HTMLAnchorElement.original._wrapper (eval at Eo (https://codesandbox.io/static/js/sandbox.50c3e4cdd.js:1:201658), <anonymous>:7543:25)

And here's the error that I was seeing locally, but was unable to reproduce in my above example (but I believe that it's the same root cause):

client.js?06a0:97 TypeError: Cannot read property 'contains' of undefined
    at eval (vue-select.js?4a7a:1)
    at Array.some (<anonymous>)
    at VueComponent.toggleDropdown (vue-select.js?4a7a:1)
    at mousedown (vue-select.js?4a7a:1)
    at invokeWithErrorHandling (vue.runtime.esm.js?2b0e:1854)
    at HTMLDivElement.invoker (vue.runtime.esm.js?2b0e:2179)
    at HTMLDivElement.original._wrapper (vue.runtime.esm.js?2b0e:6917)

And the above corresponds to this line:

https://github.com/sagalbot/vue-select/blob/2615fa1411df4bc830e2cdd5ea61389b4814123b/src/components/Select.vue#L750

My example uses vue-select, but I believe this is a Vue transition error that could apply to other components.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 days

srchulo

issue commentvuejs/vue

Transition removes components but allows interaction before transition is done, causing errors

Please open a new issue with no external dependencies as this could come from vue select

srchulo

comment created time in 3 days

issue commentvuejs/vue-next

<teleport v-if> with form input

It does happen when typing!

Aurelius333

comment created time in 3 days

issue commentvuejs/vue-next

<teleport v-if> with form input

It works on Chrome and Safari. What browser are you using?

Aurelius333

comment created time in 3 days

pull request commentvuejs/vue-router

Make sure global onError called on abortation too due posva recomendation...

Something like onAbort would need to go through the RFC process because Navigation Failures changed in v4: afterEach will trigger after each navigation. Porting back that behavior would be a breaking change and adding a new feature to remove it right away would be problematic. You can however wrap router.push to add any custom handling

afwn90cj93201nixr2e1re

comment created time in 3 days

issue closedposva/vite-tailwind-starter

Purge with tailwindcss/ui

I'm trying on an empty project with @tailwindcss/ui but it adds ~70kb to CSS

(the second build with plugins: [require('@tailwindcss/ui')] commented out.

Anyone else has the same issue?

2020-08-08_230701

closed time in 3 days

web2033

issue commentposva/vite-tailwind-starter

Purge with tailwindcss/ui

Cannot reproduce on this template. Maybe you are using that amount of CSS

web2033

comment created time in 3 days

startedzenozeng/color-hash

started time in 3 days

issue closedvuejs/vue-router

There's no way to global handle for onAbort in vue router (Check onError)

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 days

afwn90cj93201nixr2e1re

issue commentvuejs/vue-router

There's no way to global handle for onAbort in vue router (Check onError)

Use afterEach and onError. Also see https://router.vuejs.org/guide/advanced/navigation-failures.html. Don't open issues without following the template

afwn90cj93201nixr2e1re

comment created time in 3 days

issue commentvuejs/vue-next

Component updating without computed property dep changing

Note updating doesn't directly translate in HTML being patched.

paulshen

comment created time in 3 days

issue closedvuejs/vue

Template compiler: Optimizer removes attributes

Version

2.6.11

Reproduction link

https://jsfiddle.net/x915yzkv/2/

Steps to reproduce

Click on one of the two "Foo" buttons.

What is expected?

There should now be four "Bar" buttons.

What is actually happening?

The first two buttons have no text, only the third and fourth button are "Bar" buttons.


The number of buttons which are without text are always equal to the number of "Foo" buttons. If you add a third "Foo" button, there will be three buttons without text and only one with "Bar" after clicking.

I already bisected this problem, with the following result:

9a659593c48d6e88058515bf407ba61a6d359f79 is the first bad commit
commit 9a659593c48d6e88058515bf407ba61a6d359f79
Author: Evan You <yyx990803@gmail.com>
Date:   Thu Nov 17 18:08:08 2016 -0500

    adjust optimizer strategy and avoid marking simple elements as static root

 src/compiler/optimizer.js                    | 10          -
 test/unit/modules/compiler/codegen.spec.js   | 19         -----------
 test/unit/modules/compiler/optimizer.spec.js | 13           ---
 3 files changed, 27 insertions( ), 15 deletions(-)

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 days

bartim

issue commentvuejs/vue

Template compiler: Optimizer removes attributes

This is because the div with the 2 buttons get reused and value as an attribute only has an effect at creation. You should add a key to your div or use :value.prop="'Bar'" to ensure the value is set as a prop and not as an attribute

bartim

comment created time in 3 days

push eventvuejs/vue-router

Alexander Sokolov

commit sha 5c4221adf0d3dae41708f9b70b2d39e711f852b5

docs: [RU] Translation update (#3285) * docs: [RU] Translation update * README.md обновление * navigation.md fix * consistent code blocks * dynamic-matching.md add new section * dynamic-matching.md fix * navigation-guards.md fix title * data-fetching.md fix * README.md fix * (docs) [RU] Translation update * fix typo * navigation-guards.md update * redirect-and-alias.md update * change '$route' to $route * date-fetching.md formatting * histort-mode.md update * navigation-guards.md update * navigation-guards.md update * navigation-guards.md fix example * api.md added aria-current-value * installation.md update * history-mode.md update * docs: (ru) navigation-failures.md added Co-authored-by: Alex Sokolov <4497128+Alex-Sokolov@users.noreply.github.com>

view details

push time in 3 days

PR merged vuejs/vue-router

docs: [RU] Translation update

navigation-failures.md added & translated

+66 -1

1 comment

2 changed files

Alex-Sokolov

pr closed time in 3 days

pull request commentvuejs/vue-router

docs: [RU] Translation update

Thank you!

Alex-Sokolov

comment created time in 3 days

issue closedvuejs/vue

We're sorry but Index Page doesn't work properly without JavaScript enabled. Please enable it to continue.

Version

2.6.11

Reproduction link

https://github.com/wangdexiao/contennt-manage-vue.git

Steps to reproduce

when add import { userLogout } from '../network/apis' in HomeHeader.vue file get a blank page

this is HomeHeader.vue <template> <!--头部--> <el-header style="text-align: right; font-size: 12px" > <el-dropdown @command="handleCommand"> <el-button type="primary"> <span v-text="$store.getters.userName"/><i class="el-icon-arrow-down el-icon--right"/> </el-button> <el-dropdown-menu slot="dropdown"> <el-dropdown-item command="signout">退出账号</el-dropdown-item> </el-dropdown-menu> </el-dropdown> </el-header> </template>

<script> // import { userLogout } from '../network/apis' export default { name: 'HomeHeader', } </script>

this is Home.vue <template> <el-container style="border: 1px solid #eee"> <home-sider/> <el-main> <home-header/> <home-main/> </el-main> </el-container> </template> <script> import HomeHeader from '../components/HomeHeader' import HomeMain from '../components/HomeMain' import HomeSider from '../components/HomeSider' import { userLogout } from '../network/apis' export default { name: 'Home', components: { HomeMain, HomeSider, HomeHeader, }, } </script> <style > </style>

What is expected?

get a normal page

What is actually happening?

get a blank page

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 3 days

wangdexiao

issue commentvuejs/vue

We're sorry but Index Page doesn't work properly without JavaScript enabled. Please enable it to continue.

Hi, thanks for your interest but Github issues are for bug reports and feature requests only. You can ask questions on the forum, the Discord server or StackOverflow.

wangdexiao

comment created time in 3 days

CommitCommentEvent

push eventposva/vue-router-view-transition

Daniel Sixl

commit sha 52a31b5a7e09c7874ace5c48e017d7f124dd6043

chore: typos (#1)

view details

push time in 4 days

push eventvuejs/vue-router

Eduardo San Martin Morote

commit sha 2396cbab855fbc415dbe7de1bfeb6df2ba5a1cf0

docs: better routeBeforeUpdate Close #2951

view details

Eduardo San Martin Morote

commit sha da28363a1553c5a558220e19b096260462bee3ac

docs: note about mixins navigation guards Close #3143

view details

Eduardo San Martin Morote

commit sha 51d40a5404e1f5d0820c70c4cd1af3f12bcde04a

docs(api): add note about push Close #2712

view details

Eduardo San Martin Morote

commit sha 0b073d4caeb6dbd292f89546434fb3b2b34fa168

docs: race condition in example Close #2691

view details

push time in 4 days

issue closedvuejs/vue-router

[Docs/Examples] Data Fetching Example has Race Condition

Version

3.0.2

Reproduction link

https://router.vuejs.org/guide/advanced/data-fetching.html#fetching-after-navigation

Steps to reproduce

Load the page with ?id=abc Have the initial getPost request take 3 seconds to complete After 1 second, navigate to the page again, but with ?id=def Have the subsequent getPost request take 1 second to complete Wait 2 seconds

What is expected?

We show the data for id=def

What is actually happening?

We show the data for id=abc


I'm not sure what the correct fix is

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 4 days

jacobp100

issue closedvuejs/vue-router

push to route with async component before create root vue instance will fail

Version

3.0.3

Reproduction link

https://jsfiddle.net/qLz5ew9t/

Steps to reproduce

  1. create a vue-router instance
  2. call router.push to some async-component-route
  3. create the root vue instance

What is expected?

router.push success

What is actually happening?

router.push was aborted


If we change step2 to push to some sync-component-route, then the push would be success.
Or, exchange step2 with step3, call router.push after create the vue instance, router.push will also success
Is this intended or a bug or not allowed use cases?

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 4 days

noe132

issue closedvuejs/vue-router

mixins with navigation guards should go after installing vue router

Version

3.1.6

Reproduction link

https://codesandbox.io/s/stupefied-river-6pyng

Steps to reproduce

use component route guard before vue-router installed.

Vue.mixin({
  beforeRouteUpdate(to, from, next) {
    next();
  }
});

Vue.use(Router)

What is expected?

Just no error or the document should indicate that user should not use component route guard mixins before vue-router is installed.

What is actually happening?

TypeError: Cannot read property 'apply' of undefined
    at boundRouteGuard (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2297:20)

    at iterator (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2160:7)

    at step (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:1886:9)

    at runQueue (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:1894:3)

    at HTML5History.confirmTransition (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2187:3)

    at HTML5History.transitionTo (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2074:8)

    at HTML5History.push (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2405:10)

    at VueRouter.push (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:2820:18)

    at handler (https://6pyng.csb.app/node_modules/vue-router/dist/vue-router.common.js:1100:18)

    at invokeWithErrorHandling (eval at Qr (https://codesandbox.io/static/js/sandbox.37b4bff87.js:1:178758), <anonymous>:1859:26)

    at HTMLAnchorElement.invoker (eval at Qr (https://codesandbox.io/static/js/sandbox.37b4bff87.js:1:178758), <anonymous>:2184:14)

    at HTMLAnchorElement.original._wrapper (eval at Qr (https://codesandbox.io/static/js/sandbox.37b4bff87.js:1:178758), <anonymous>:7543:25)

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 4 days

lovetingyuan

issue closedvuejs/vue-router

Incorrect triggering of beforeRouteUpdate when using router-view key

Version

3.1.3

Reproduction link

https://codepen.io/brophdawg11/pen/bGbXaXW

Steps to reproduce

I'm slightly confused by the wording in the documentation and am seeing what I think is either incorrect behavior, or expected behavior that is not explicit enough in the docs regarding when beforeRouteEnter/beforeRouteUpdate would fire.

The docs state:

beforeRouteUpdate (to, from, next) {
    // called when the route that renders this component has changed,
    // but this component is reused in the new route.
    // For example, for a route with dynamic params `/foo/:id`, when we
    // navigate between `/foo/1` and `/foo/2`, the same `Foo` component instance
    // will be reused, and this hook will be called when that happens.
    // has access to `this` component instance.
  },

And this seems correct. My confusion comes from the statement "but this component is reused in the new route". What about in a scenario with <router-view :key="$route.path"> in which we may navigate from /user/1 to /user/2 but we want to animate between the two and thus we force a new component creation (assuming the route path is /user/:id).

If you look at the linked codepen console when navigating between the two routes, the component instance is destroyed and a new one created, but it still calls beforeRouteUpdate

Which of the following should be correct in this scenario?

  • beforeRouteEnter is called on the destination component because it is a net-new component, even though we're still within the same "route". If so, I think this would be need a bug fix.
  • beforeRouteUpdate is called on the destination component because even though we use a new component, we remained in the same /user/:id "route". If this is the case, I think vue-router is functioning correctly but the docs are misleading about beforeRouteUpdate being called when the component is reused.

What is expected?

From the docs are they stand, it seems to me that beforeRouteEnter should be called on the new component when using a <router-view> :key prop that causes a new component instance to be created. This also is more intuitive IMO because the component is not updating in place.

What is actually happening?

beforeRouteUpdate is being called


We found this when trying to figure out the best place to show/hide our loaders during page to page transitions. Initially it seemed like the next callback of beforeRouteEnter might be the best place because it triggers after the new DOM was patched.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 4 days

brophdawg11

issue closedvuejs/vue-router

Nested routes JS Fiddle example doesn't work in Safari (docs)

Version

2.7.0

Reproduction link

http://jsfiddle.net/yyx990803/L7hscd8h/

Steps to reproduce

  1. Visit this page of the docs using Safari 10
  2. Click the link to the JS Fiddle at the bottom of the page

What is expected?

Demo router links should be active and clickable

What is actually happening?

They are not active. There is a console error "Can't create duplicate variable that shadows a global property"


This is due to this webkit bug and can be worked around by changing the final const app = declaration to var app =.

<!-- generated by vue-issues. DO NOT REMOVE -->

closed time in 4 days

bsaf

issue commentvuejs/vue-router

Nested routes JS Fiddle example doesn't work in Safari (docs)

Since this was fixed I think it's fine to keep the example like that

bsaf

comment created time in 4 days

more