summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2018-02-21 12:06:49 -0500
committerLuke Shumaker <lukeshu@lukeshu.com>2018-02-21 12:06:49 -0500
commit5f311c5516494894882ce18707cea6a1c57ae63a (patch)
treed5e134643c13f784803090e072f669c0e1f29f1b
parent967eee7b58e201d4a6620c84b6ed67775c5d4af6 (diff)
-rw-r--r--repos.org166
-rw-r--r--vue-notes.md34
2 files changed, 113 insertions, 87 deletions
diff --git a/repos.org b/repos.org
index 2d82bcd..40d5dcf 100644
--- a/repos.org
+++ b/repos.org
@@ -1,83 +1,83 @@
-| Name | Last modified | Type | Desc |
-|------------------------------------------+----------------------+--------------------+--------------------------------------------------------------------------------------|
-| insert-css | 2016-07-25T01:09:50Z | ??? | ??? |
-| flow-typed | 2016-06-17T09:54:32Z | ??? | ??? |
-| | | | |
-| babel-preset-vue-app | 2017-12-06T14:30:48Z | Bundler | ??? |
-| babel-preset-vue | 2017-12-06T14:26:31Z | Bundler | JSX |
-| babel-helper-vue-jsx-merge-props | 2017-12-06T02:19:52Z | Bundler | JSX |
-| babel-plugin-transform-vue-jsx | 2018-01-02T09:32:33Z | Bundler | JSX support for render functions |
-| | | | |
-| vue-hot-reload-api | 2017-11-17T14:33:29Z | Bundler | "This is what vue-loader and vueify use under the hood." |
-| vue-template-es2015-compiler | 2017-10-24T12:09:10Z | Bundler | Handle ES2015 features in render functions; claims to be used by vue-loader & vueify |
-| | | | |
-| vue-component-compiler | 2017-12-29T20:49:48Z | Bundler | SFC compiler; "legacy" branch merged in to vueify, "master" branch heavily WIP |
-| | | | |
-| rollup-plugin-vue | 2018-01-05T07:01:23Z | Bundler | Rollup |
-| | | | |
-| vue-loader | 2018-01-05T03:02:42Z | Bundler | WebPack |
-| vue-loader / vue-html-loader | 2017-09-19T03:38:42Z | Bundler | Used by vue-loader |
-| vue-loader / vue-style-loader | 2018-01-03T02:49:04Z | Bundler | Used by vue-loader |
-| | | | |
-| vueify | 2017-12-28T09:43:53Z | Bundler | Browserify |
-| | | | |
-| systemjs-plugin-vue | 2016-11-25T11:06:58Z | Bundler | abandoned |
-| | | | |
-| vue-ssr-html-stream | 2017-04-27T06:33:51Z | Deprecated/Bundler | See vue-server-renderer |
-| eslint-config-vue | 2017-06-01T08:37:24Z | Deprecated/Devtool | |
-| Discussion | 2015-09-21T21:31:53Z | Deprecated/Docs | |
-| vue-async-data | 2017-08-02T09:45:51Z | Deprecated/Lib | hasn't been updated for Vue 2 |
-| vue-element | 2017-06-17T20:50:17Z | Deprecated/Lib | See karol-f/vue-element instead. |
-| vue-test-utils | 2018-01-04T20:22:45Z | Devtool | |
-| vue-devtools | 2018-01-06T03:50:36Z | Devtool | Browser plugin |
-| vue-cli | 2018-01-05T23:29:53Z | Devtool | CLI tool for boilerplate templates |
-| eslint-plugin-vue | 2018-01-05T19:40:35Z | Devtool | |
-| vetur | 2018-01-01T06:00:54Z | Devtool | VS Code |
-| eslint-plugin-vue-libs | 2017-12-28T22:43:22Z | Devtool | |
-| vue-syntax-highlight | 2017-12-15T15:44:33Z | Devtool | SFC highlighitng for Sublime Text |
-| vue-migration-helper | 2017-05-07T03:47:22Z | Devtool | |
-| vue-template-validator | 2016-06-06T14:03:09Z | Devtool | |
-| js-repaint-perfs | 2016-03-18T01:08:13Z | Devtool/Internal | |
-| awesome-vue | 2018-01-05T18:57:42Z | Docs | |
-| vue-ssr-docs | 2017-12-19T10:27:31Z | Docs | |
-| roadmap | 2017-12-18T17:23:24Z | Docs | |
-| vue-requests | 2015-12-12T22:27:35Z | Docs | |
-| vue-test-utils-mocha-webpack-example | 2018-01-01T17:40:46Z | Example | |
-| vue-test-utils-jest-example | 2017-12-25T20:55:40Z | Example | |
-| vue-hackernews-2.0 | 2017-12-24T17:29:23Z | Example | |
-| vue-test-utils-getting-started | 2017-09-28T21:46:17Z | Example | |
-| vue-router-demos | 2017-09-17T10:41:28Z | Example | |
-| vue-hackernews | 2016-12-13T07:10:20Z | Example | |
-| vue-webpack-meteor-example | 2015-12-14T16:35:20Z | Example | |
-| todomvc | 2015-10-27T18:37:20Z | Example | |
-| vue | 2018-01-05T22:46:01Z | Lib | Core library |
-| vuex | 2018-01-04T16:39:10Z | Lib | State Management |
-| vue-router | 2017-12-31T12:47:47Z | Lib | Router |
-| vuex-router-sync | 2017-10-13T04:37:50Z | Lib | |
-| vuefire | 2018-01-01T13:16:35Z | Lib/Integration | Firebase |
-| vue-class-component | 2018-01-03T15:24:44Z | Lib/Integration | Use ES6 or TypeScript classes for inheritance |
-| vuex-observable | 2017-12-17T23:37:34Z | Lib/Integration | integration with RxJS; early POC stage |
-| vue-rx | 2017-11-08T11:48:28Z | Lib/Integration | integration with RxJS |
-| vue-touch | 2017-09-19T03:38:42Z | Lib/Integration | Hammer.js |
-| laravel-elixir-vue-2 | 2016-11-30T16:16:08Z | Lib/Integration | Elixir 6 |
-| vue-animated-list | 2016-09-29T00:09:18Z | Lib/Plugin | |
-| ~ jp.vuejs.org | 2018-01-05T20:33:42Z | Website | |
-| ~ vuejs.org | 2018-01-05T20:20:10Z | Website | |
-| ~ cn.vuejs.org | 2018-01-05T06:18:11Z | Website | |
-| ~ it.vuejs.org | 2018-01-03T20:47:20Z | Website | |
-| ~ new-issue.vuejs.org / vue-issue-helper | 2017-12-28T15:27:27Z | Website | |
-| vue-curated | 2017-11-07T16:23:45Z | Website | |
-| vue-curated-server | 2017-11-01T21:09:25Z | Website | |
-| gitbook-plugin-theme-vuejs | 2017-10-06T14:07:27Z | Website | |
-| art | 2017-08-26T17:13:53Z | Website | |
-| vue-curated-client | 2017-07-20T15:24:36Z | Website | |
-| ~ v1-jp.vuejs.org | 2017-05-19T09:55:33Z | Website | |
-| ~ v1-cn.vuejs.org | 2016-12-23T14:30:45Z | Website | |
-| ~ v1.vuejs.org | 2016-09-30T18:43:05Z | Website | |
-| ~ rc.vuejs.org | 2016-09-30T04:56:16Z | Website | |
-| ~ 012.vuejs.org | 2015-12-19T04:10:23Z | Website | |
-| ~ 011.vuejs.org | 2015-12-19T04:10:21Z | Website | |
-| ~ 012-cn.vuejs.org | 2015-11-05T18:11:29Z | Website | |
-| cdnjs | 2015-10-18T04:59:55Z | Website | |
-| jsdelivr | 2015-10-18T04:49:42Z | Website | |
-| beautiful-open | 2014-08-15T22:11:44Z | Website | |
+| Name | Last modified | Type | Desc |
+|------------------------------------------+----------------------+--------------------+---------------------------------------------------------------------------------------------------------------------------------------|
+| insert-css | 2016-07-25T01:09:50Z | ??? | ??? |
+| flow-typed | 2016-06-17T09:54:32Z | ??? | ??? |
+| | | | |
+| babel-preset-vue-app | 2017-12-06T14:30:48Z | Bundler | ??? |
+| babel-preset-vue | 2017-12-06T14:26:31Z | Bundler | JSX |
+| babel-helper-vue-jsx-merge-props | 2017-12-06T02:19:52Z | Bundler | JSX |
+| babel-plugin-transform-vue-jsx | 2018-01-02T09:32:33Z | Bundler | JSX support for render functions |
+| | | | |
+| vue-hot-reload-api | 2017-11-17T14:33:29Z | Bundler | "This is what vue-loader and vueify use under the hood." |
+| vue-template-es2015-compiler | 2017-10-24T12:09:10Z | Bundler | Handle ES2015 features in render functions; claims to be used by vue-loader & vueify (since vue-template-compiler emits ES2015 code?) |
+| | | | |
+| vue-component-compiler | 2017-12-29T20:49:48Z | Bundler | SFC compiler; "legacy" branch merged in to vueify, "master" branch heavily WIP |
+| | | | |
+| rollup-plugin-vue | 2018-01-05T07:01:23Z | Bundler | Rollup |
+| | | | |
+| vue-loader | 2018-01-05T03:02:42Z | Bundler | WebPack |
+| vue-loader / vue-html-loader | 2017-09-19T03:38:42Z | Bundler | Used by vue-loader |
+| vue-loader / vue-style-loader | 2018-01-03T02:49:04Z | Bundler | Used by vue-loader |
+| | | | |
+| vueify | 2017-12-28T09:43:53Z | Bundler | Browserify |
+| | | | |
+| systemjs-plugin-vue | 2016-11-25T11:06:58Z | Bundler | abandoned |
+| | | | |
+| vue-ssr-html-stream | 2017-04-27T06:33:51Z | Deprecated/Bundler | See vue-server-renderer |
+| eslint-config-vue | 2017-06-01T08:37:24Z | Deprecated/Devtool | |
+| Discussion | 2015-09-21T21:31:53Z | Deprecated/Docs | |
+| vue-async-data | 2017-08-02T09:45:51Z | Deprecated/Lib | hasn't been updated for Vue 2 |
+| vue-element | 2017-06-17T20:50:17Z | Deprecated/Lib | See karol-f/vue-element instead. |
+| vue-test-utils | 2018-01-04T20:22:45Z | Devtool | |
+| vue-devtools | 2018-01-06T03:50:36Z | Devtool | Browser plugin |
+| vue-cli | 2018-01-05T23:29:53Z | Devtool | CLI tool for boilerplate templates |
+| eslint-plugin-vue | 2018-01-05T19:40:35Z | Devtool | |
+| vetur | 2018-01-01T06:00:54Z | Devtool | VS Code |
+| eslint-plugin-vue-libs | 2017-12-28T22:43:22Z | Devtool | |
+| vue-syntax-highlight | 2017-12-15T15:44:33Z | Devtool | SFC highlighitng for Sublime Text |
+| vue-migration-helper | 2017-05-07T03:47:22Z | Devtool | |
+| vue-template-validator | 2016-06-06T14:03:09Z | Devtool | |
+| js-repaint-perfs | 2016-03-18T01:08:13Z | Devtool/Internal | |
+| awesome-vue | 2018-01-05T18:57:42Z | Docs | |
+| vue-ssr-docs | 2017-12-19T10:27:31Z | Docs | |
+| roadmap | 2017-12-18T17:23:24Z | Docs | |
+| vue-requests | 2015-12-12T22:27:35Z | Docs | |
+| vue-test-utils-mocha-webpack-example | 2018-01-01T17:40:46Z | Example | |
+| vue-test-utils-jest-example | 2017-12-25T20:55:40Z | Example | |
+| vue-hackernews-2.0 | 2017-12-24T17:29:23Z | Example | |
+| vue-test-utils-getting-started | 2017-09-28T21:46:17Z | Example | |
+| vue-router-demos | 2017-09-17T10:41:28Z | Example | |
+| vue-hackernews | 2016-12-13T07:10:20Z | Example | |
+| vue-webpack-meteor-example | 2015-12-14T16:35:20Z | Example | |
+| todomvc | 2015-10-27T18:37:20Z | Example | |
+| vue | 2018-01-05T22:46:01Z | Lib | Core library |
+| vuex | 2018-01-04T16:39:10Z | Lib | State Management |
+| vue-router | 2017-12-31T12:47:47Z | Lib | Router |
+| vuex-router-sync | 2017-10-13T04:37:50Z | Lib | |
+| vuefire | 2018-01-01T13:16:35Z | Lib/Integration | Firebase |
+| vue-class-component | 2018-01-03T15:24:44Z | Lib/Integration | Use ES6 or TypeScript classes for inheritance |
+| vuex-observable | 2017-12-17T23:37:34Z | Lib/Integration | integration with RxJS; early POC stage |
+| vue-rx | 2017-11-08T11:48:28Z | Lib/Integration | integration with RxJS |
+| vue-touch | 2017-09-19T03:38:42Z | Lib/Integration | Hammer.js |
+| laravel-elixir-vue-2 | 2016-11-30T16:16:08Z | Lib/Integration | Elixir 6 |
+| vue-animated-list | 2016-09-29T00:09:18Z | Lib/Plugin | |
+| ~ jp.vuejs.org | 2018-01-05T20:33:42Z | Website | |
+| ~ vuejs.org | 2018-01-05T20:20:10Z | Website | |
+| ~ cn.vuejs.org | 2018-01-05T06:18:11Z | Website | |
+| ~ it.vuejs.org | 2018-01-03T20:47:20Z | Website | |
+| ~ new-issue.vuejs.org / vue-issue-helper | 2017-12-28T15:27:27Z | Website | |
+| vue-curated | 2017-11-07T16:23:45Z | Website | |
+| vue-curated-server | 2017-11-01T21:09:25Z | Website | |
+| gitbook-plugin-theme-vuejs | 2017-10-06T14:07:27Z | Website | |
+| art | 2017-08-26T17:13:53Z | Website | |
+| vue-curated-client | 2017-07-20T15:24:36Z | Website | |
+| ~ v1-jp.vuejs.org | 2017-05-19T09:55:33Z | Website | |
+| ~ v1-cn.vuejs.org | 2016-12-23T14:30:45Z | Website | |
+| ~ v1.vuejs.org | 2016-09-30T18:43:05Z | Website | |
+| ~ rc.vuejs.org | 2016-09-30T04:56:16Z | Website | |
+| ~ 012.vuejs.org | 2015-12-19T04:10:23Z | Website | |
+| ~ 011.vuejs.org | 2015-12-19T04:10:21Z | Website | |
+| ~ 012-cn.vuejs.org | 2015-11-05T18:11:29Z | Website | |
+| cdnjs | 2015-10-18T04:59:55Z | Website | |
+| jsdelivr | 2015-10-18T04:49:42Z | Website | |
+| beautiful-open | 2014-08-15T22:11:44Z | Website | |
diff --git a/vue-notes.md b/vue-notes.md
index 7295e70..1c96655 100644
--- a/vue-notes.md
+++ b/vue-notes.md
@@ -63,10 +63,12 @@ In addition to those objects:
ahead-of-time as a server-side optimization step before being
served to the client, or it can happen at runtime by calling
`Vue.compile("template string")`, which returns a function.
- Anyway, having render functions exposed to programmers means that,
- if you want, you can write the render functions yourself, instead
- of writing templates. Programmers coming from React will note that
- JSX is useful for writing render functions.
+ Actually, the compiler returns a `render` function *and* a set of
+ `staticRenderFns` helpers. Anyway, having render functions exposed
+ to programmers means that, if you want, you can write the render
+ functions yourself, instead of writing templates. Programmers
+ coming from React will note that JSX is useful for writing render
+ functions.
Tying it together: A *component* is mostly just a *Vue instance* that
manages its part of the DOM by calling a *render function* (compiled
@@ -250,6 +252,30 @@ differences.
- Rollup (`rollup-plugin-vue`): TODO
+The resulting JS module does 2 things:
+ - Inject global CSS in to the page (at module load)
+ * vue-loader: TODO
+ * vueify: `require("vueify/lib/insert-css").insert("CSS-string")`
+ * rollup-plugin-vue: TODO
+ - Export an object suitable to pass to `Vue.component()`; either a
+ raw `Object`, or a `Vue.extend()`-blessed object (which has type
+ `Function`)
+
+ This is mostly is up to you, exporting it in the `<script>`
+ element. However, this obviously doesn't include the template.
+ How does it inject the template in to the object you export, when
+ there are (1) multiple object formats that you can export, and (2)
+ multiple module syntaxes that you can use to export it?
+ * vue-loader: TODO
+ * vueify: (2) Assume Node module syntax (CommonJS-ish), and (2)
+ set:
+
+ var tmp_options = typeof module.exports === "function" ? module.exports.options : module.exports;
+ tmp_options.render = function() { ... };
+ tmp_options.staticRenderFns = ...;
+
+ * rollup-plugin-vue: TODO
+
# misc
Components don't work by literally registering custom elements with