Go to file
Evan You 6b10f0cd1d refactor: remove implicit reactive() call on renderContext
reference: https://github.com/vuejs/rfcs/issues/121

BREAKING CHANGE: object returned from `setup()` are no longer implicitly
passed to `reactive()`.

  The renderContext is the object returned by `setup()` (or a new object
  if no setup() is present). Before this change, it was implicitly passed
  to `reactive()` for ref unwrapping. But this has the side effect of
  unnecessary deep reactive conversion on properties that should not be
  made reactive (e.g. computed return values and injected non-reactive
  objects), and can lead to performance issues.

  This change removes the `reactive()` call and instead performs a
  shallow ref unwrapping at the render proxy level. The breaking part is
  when the user returns an object with a plain property from `setup()`,
  e.g. `return { count: 0 }`, this property will no longer trigger
  updates when mutated by a in-template event handler. Instead, explicit
  refs are required.

  This also means that any objects not explicitly made reactive in
  `setup()` will remain non-reactive. This can be desirable when
  exposing heavy external stateful objects on `this`.
2020-01-27 16:00:18 -05:00
.circleci ci: bust cache 2019-12-20 10:59:21 -05:00
.github chore: fix typo in contributing guide (#589) 2020-01-07 11:33:22 +01:00
.vscode workflow: support debug single jest test file in vscode (#360) 2019-10-23 11:20:05 -04:00
packages refactor: remove implicit reactive() call on renderContext 2020-01-27 16:00:18 -05:00
scripts build: adjust release tag 2020-01-22 10:51:17 -05:00
test-dts test: fix dts tests for 1ccecc0 2020-01-27 16:00:17 -05:00
.gitignore chore: add the yarn error log file to git ignore (#150) 2019-10-09 12:13:54 -04:00
.prettierrc init (graduate from prototype) 2018-09-19 11:35:38 -04:00
api-extractor.json chore: config comments 2019-09-03 12:17:33 -04:00
CHANGELOG.md chore: fix changelog formatting [ci skip] 2020-01-22 11:12:55 -05:00
jest.config.js wip(ssr): render real components 2020-01-27 16:00:17 -05:00
LICENSE chore: license 2019-10-28 11:15:17 -04:00
package.json release: v3.0.0-alpha.3 2020-01-22 11:10:30 -05:00
README.md chore: update readme [ci skip] 2020-01-02 18:40:43 -05:00
rollup.config.js wip(ssr): render real components 2020-01-27 16:00:17 -05:00
tsconfig.json chore: Use dynamic paths in tsconfig.json (#548) 2019-12-18 11:46:07 -05:00
yarn.lock build(deps-dev): bump rollup from 1.29.1 to 1.30.0 2020-01-27 08:09:34 +00:00

vue-next CircleCI

Status: Alpha.

The current codebase has basic feature parity with v2.x, together with the changes proposed in merged RFCs. There is a simple webpack-based setup with Single-File Component support available here.

At this stage, the only major work left is server-side rendering, which we are actively working on. In the meanwhile, we would like our users to start building small experimental apps using the alpha releases to help us identify bugs and stabilize the implementation.

Please note that there could still be undocumented behavior inconsistencies with 2.x. When you run into such a case, please make sure to first check if the behavior difference has already been proposed in an existing RFC. If the inconsistency is not part of an RFC, then it's likely unintended, and an issue should be opened (please make sure to use the issue helper when opening new issues).

Known Issues

  • There is currently no way to attach custom instance properties via Vue.prototype.

  • The current implementation requires native ES2015+ in the runtime environment and does not support IE11 (yet).

Contribution

See Contributing Guide.