Vue 2.0.0-beta.1 发布,轻量级 JavaScript 框架

oschina
 oschina
发布于 2016年07月09日
收藏 15

Vue 2.0.0-beta.1 发布了,Vue.js 是构建 Web 界面的 JavaScript 库,提供数据驱动的组件,还有简单灵活的 API,使得 MVVM 更简单。

本次更新意味着API和功能集现在被认为是完整的,在官方2.0版本之前将尽最大努力避免进一步的重大更改。该团队将重点放在稳定、文件和更新支持库上,例如 vue-router 2.0。

注意:如果你是从之前的 2.0-alpha 版本升级或使用 vue-loader 、 vueify,确保完全重新安装NPM的依赖。

Fixed

  • #3176 fix v-for list update edge case

  • #3179 fix v-model on component value always casted to string

  • various other internal stability fixes

重要更新:

  • Custom directive change:

    • update hook will now always be called when the component is updated. This makes the lifecycle more consistent with the new rendering model. The user can simply check forbinding.value !== binding.oldValue to persist the old behavior, or always perform the update (e.g. when the directive is bound to an object that might be mutated instead of replaced).

    • hook naming change: postupdate -> componentUpdated.

  • Transition hooks naming change (now same with 1.x):

    • onEnter -> enter

    • onLeave -> leave

  • Server-side rendering:

    • The component-level caching option server.getCacheKey is renamed to serverCacheKey(no longer necessary to nest under the server block):

      export default {
        // ...
        serverCacheKey: props => props.item.id
      }
    • createRenderer and createBundleRenderer no longer uses lru-cache as the default cache implementation. The user is now responsible for providing the cache implementation which should adhere to the following interface:

      {
        get: (key: string, [cb: Function]) => string | void,
        set: (key: string, val: string) => void,
        has?: (key: string, [cb: Function]) => boolean | void // optional
      }

      更多细节,请看 docs for SSR caching.

  • Functional component render function signature change:

    The first argument is still h which is $createElement bound to the parent instance. Everything else is now passed in the second argument which is a context object:

    export default {
      functional: true,
      render (h, context) {
        // extracted and validated props for the functional component itself
        context.props
    
        // raw data for the functional component's vnode
        // without extracted props
        context.data
    
        // **a function** that returns the child elements
        // nested inside the functional component's tag
        context.children
    
        // the parent component instance
        context.parent
      }
    }

    This avoids having to remember the argument order and makes it easier when you only need some of the arguments:

    export default {
      functional: true,
      render (h, { data, children }) {
        // simple identity higher-order component
        return h(SomeOtherComponent, data, children)
      }
    }


下载地址:

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Vue 2.0.0-beta.1 发布,轻量级 JavaScript 框架
加载中

最新评论(10

宇天
宇天
2.0的文档 啥时候出来呢
夏天de思恋
夏天de思恋
这个和angular比怎么样
进击的代码
进击的代码
正在用1.x,赞
肖滔
肖滔
简洁好用,顶
开不了囧
开不了囧
准备要升级了
Xiphin
Xiphin
期待出正式版
世尘悉洞
世尘悉洞
期待出正式版吧。
undefine
undefine
赶紧赶紧
GITTODO
GITTODO
weex竟然不完全开源,想放弃
lengspring
lengspring
坐等正式版发布
返回顶部
顶部