-
Notifications
You must be signed in to change notification settings - Fork 49
Next steps #34
Comments
For meteor, I would just need the component definition JS and the style (not sure how to manage pre-processors though - currently, it's a set of individual atmosphere packages that exposes a global to the .vue processor). I already made a HMR system that works in Meteor and since it's quite specific, I agree it should be left to the implementation outside of the component compiler. |
For nativescript-vue we would need multiple Another thing that we should consider is allowing changing the |
I have moved all open tasks to the board. I would be actively working on these tasks from this Friday. |
The only open issue from this list is #36, tracked separately. |
Prior design thread: #28
Thanks to the great work by @znck we now have a good start to iterate on. I did a quick review of the current codebase and here's a list of things I think we should work on next:
Feature Sync with Latest
vue-loader
functional template support (vuejs/vue-loader@c8a016a, vuejs/vue-loader@585b70c, vuejs/vue-loader@c7b5376)
optional cache busting when generating source maps for blocks (vuejs/vue-loader@1123b12)
update
gen-id
implementation: https://github.com/vuejs/vue-loader/blob/master/lib/loader.js#L89template compiler
transformToRequire
support wildcard (vuejs/vue-loader@c589454)named exports support (vuejs/vue-loader@2e2aa2b)
esModule default export support in custom blocks (vuejs/vue-loader@7459a87)
Scoped CSS transform bug fixes
use
prettier
instead ofjs_beautify
when formatting generated render function intemplate-compiler
To avoid having to maintain both side in parallel, I'll temporarily limit new features in
vue-loader
until we refactor it to use this package internally.Questions still open to Discussion
Current implementation seems to be assuming a module bundler environment, but technically this package should not be limited to that. (discussion in Assemble in line function #33)
Should hot-reload be handled in here? Currently the hot-reload logic is quite specific to webpack, which should be the responsibility of
vue-loader
.How to distribute the runtime (
normalizeComponent
and style injection code)? I think this is tricky since it involves how the bundler can locate the packages, and in some cases the runtime may need to be directly inlined (related to Assemble in line function #33).We might need to rethink how
assemble
works altogether. Rough idea: the baseassemble
function should assume much less and try to allow the user to decide how to handle styles, hot-reload and the normalization./cc @znck @eddyerburgh
The text was updated successfully, but these errors were encountered: