Skip to content

Releases: vuejs/vue

v2.0.0-rc.7

23 Sep 22:25
Compare
Choose a tag to compare
v2.0.0-rc.7 Pre-release
Pre-release

Improvements

  • Improved <transition-group> move animation performance by avoiding layout thrashing

Fixed

  • #3670 v-bind object with no argument should work on components
  • #3673 v-model value matching should use loose equal (make behavior consistent with 1.x)
  • #3689 fix <select v-model> initial value out of sync in IE/Edge
  • #3693 fix prop default value not used when using propsData
  • #3729 fix <option value=""> cannot be selected with v-model
  • #3730 fix iOS 10 UIWebView broken update issue

v1.0.27

23 Sep 19:54
Compare
Choose a tag to compare

Fixed

  • #3183 fix prop validation failure with propsData (#3193 by @kazupon)
  • #3184 textarea with v-pre attr should skip compile (#3202 by @hylin)
  • #3187 fix error processing single-letter hyphenated props
  • #3204 fix $refs not updated correctly inside v-if (#3217 by @kazupon)
  • #3210 fix filter arguments parsing when it contains spaces (#3734 by @defcc)
  • #3273 handle backticks in expression (#3273 by @skyronic)
  • #3307 v-model checkbox updates should replace the bound array
  • #3668 fix required prop warning when using propsData
  • #3730 fix iOS 10 UIWebView update bug with new nextTick implementation

v2.0.0-rc.6

13 Sep 13:22
Compare
Choose a tag to compare
v2.0.0-rc.6 Pre-release
Pre-release

Fixed

  • #3610 fix data observation converting prototype keys
  • #3642 fix incorrect duplicate slot warning detection
  • #3657 fix style binding array syntax not updating due to toObject mutating merged objects
  • #3663 fix parsing multi-line attribute values in DOM template in IE

v2.0.0-rc.5

08 Sep 11:30
Compare
Choose a tag to compare
v2.0.0-rc.5 Pre-release
Pre-release

New

  • Custom directives now get a new hook: inserted, which will be called when the bound element has been inserted into its parent node. (Note this only guarantees parent node presence but not in-document)
  • SSR hydration now allows the client to hydrate a server-rendered node when it has no children. (Previously it would throw an error and bail out with a full re-render) This allows the server to render a static "app shell" and let the client pick it up.

Fixed

  • Reverted custom directive bind call timing due to it leading to incorrect v-show property switch timing during initial render.
  • #3556 fix v-on patching for cloned slot nodes
  • #3559 remove unnecessary appear check in v-show
  • #3595 fix incorrect duplicate slot warning when they are under v-if/v-else
  • #3611 fix v-for patching error by keying nested children by default

v2.0.0-rc.4

29 Aug 19:49
Compare
Choose a tag to compare
v2.0.0-rc.4 Pre-release
Pre-release

New

  • Async component function now supports returning a Promise. Note if you are using async components with vue-router you need to update vue-router too.

Fixed

  • Fixed hot-reload issues when editing static elements
  • #3491 fix vdom patch: properly teardown stable directives
  • #3506 fix transition end detection (only check events on target element)
  • #3516 fix v-model codegen for non-input components with type prop
  • #3518 fix event initialization on reused slot nodes
  • #3526 fix text parser for multi-line mustache tags
  • #3529 ensure custom directive bind hook is called after element insertion
  • #3533 fix vdom patch: DOM insertion reference node error on reused static node

v2.0.0-rc.3

20 Aug 18:12
Compare
Choose a tag to compare
v2.0.0-rc.3 Pre-release
Pre-release

New

  • Vue.set and Vue.delete is now also exposed on Vue instances as this.$set and this.$delete. Note this is different from the 1.x counterparts: they are simply aliases to the global API.

    This change eliminates the need to import/require Vue just to access these two methods, and makes it easier to pre-compile standalone Vue components.

  • Added a warning when mounting the root instance to body or html. This is no longer recommended in 2.0.

Fixed

  • #3455 fix refs missing on empty component root
  • #3468 ensure v-model changes take effect before v-on listeners
  • #3472 fix incorrect name option warning
  • #3474 fix transition insert hook duplicate invocation on slot nodes
  • #3478 fix v-on with chained key modifiers
  • #3484 fix v-show should be able to overwrite inline display: none
  • #3488 fix v-show transition enter hook when using raw render function / JSX

v2.0.0-rc.2

16 Aug 03:40
Compare
Choose a tag to compare
v2.0.0-rc.2 Pre-release
Pre-release

Improvements

  • v-show now respects the original display value of the element (@chrisvfritz)
  • The server renderer now supports rendering <script> and <style> tags (they are still forbidden on the client) - this allows using a Vue component to render the HTML layout of the entire page. (@naumovs)
  • Added warning for missing v-on handlers.
  • Added warning for duplicate <slot> usage which used to work in 1.x but is no longer supported in 2.0.

Fixed

  • Fixed vdom patch errors on components with empty root (e.g. when root has v-if or transition)
  • #3433 fix enter hook not firing for v-show transition
  • #3439 fix v-model on input[type=range] in IE
  • #3440 fix out-in transition entering early when parent re-renders
  • #3451 fix native events on components with inline-template
  • #3453 fix unnecessary child watcher calls on parent re-render

v2.0.0-rc.1

11 Aug 05:48
Compare
Choose a tag to compare
v2.0.0-rc.1 Pre-release
Pre-release

WIP Documentation

Fixed

  • prop validation now work when code is run across different vms/iframes.

Breaking Change

  • SSR: when using serverCacheKey, the component also needs to have a unique name option.

v2.0.0-beta.8

10 Aug 05:02
Compare
Choose a tag to compare
v2.0.0-beta.8 Pre-release
Pre-release

New

  • Improved SSR error handling when using bundleRenderer.renderToStream
  • Improved SSR warning when component is missing render function / templates

Breaking Changes

  • keep-alive is no longer a special attribute: it is now a wrapper component, similar to <transition>:

    <keep-alive>
      <component :is="view"></component>
    </keep-alive>

    This makes it possible to use keep-alive on multiple conditional children (note the children should eventually evaluate to a single child - any child other than the first one will be ignored):

    <keep-alive>
      <comp-a v-if="a > 1"></comp-a>
      <comp-b v-else></comp-b>
    </keep-alive>

    When used together with <transition>, make sure to nest it inside:

    <transition>
      <keep-alive>
        <component :is="view"></component>
      </keep-alive>
    </transition>

Fixed

  • #3395 fix v-show transition triggering more than necessary
  • #3400 fix slot resolution on re-renders
  • #3403 fix double quote decoding inside attributes when using DOM template
  • #3406 fix static node reused incorrectly inside v-for

v2.0.0-beta.7

05 Aug 22:18
Compare
Choose a tag to compare
v2.0.0-beta.7 Pre-release
Pre-release

New

  • Improved warning information for SSR hydration failures.
  • Support :class and :style binding values when using class and style in v-bind="object".

Fixed

  • Fixed SSR hydration failures when using <transition> that evaluates to empty nodes.
  • #3379 :style bindings now work for plain strings as well
  • #3386 & #3391 slot children not correctly updating

Breaking Changes

  • When using render functions, it is now no longer necessary (nor supported) to wrap component children inside a function:

    render (h) {
      // before
      return h(Comp, () => [...children])
    
      // after
      return h(Comp, [...children])
    }

    If you are using JSX, make sure to upgrade to babel-plugin-transform-vue-jsx to ^3.0.0.