diff --git a/learn-vue-cli/vue-cli.md b/learn-vue-cli/vue-cli.md
new file mode 100644
index 0000000..985e364
--- /dev/null
+++ b/learn-vue-cli/vue-cli.md
@@ -0,0 +1,93 @@
+# 1. vue-cli 简介
+
+简单介绍
+
+[Github / vue-cli](https://github.com/vuejs/vue-cli)
+
+[youtube / vue-cli 简介,与 套用 mint-ui demo (台湾小凡) ](https://youtu.be/AwjfG5T3vO4)
+
+[BiliBili / vue-cli 简介,与 套用 mint-ui demo (台湾小凡)](http://www.bilibili.com/video/av6828349/)
+
+# 2. vue.js 2 vue-cli how to start / 如何使用 vue-cli
+
+vue.js2 vue-cli 怎么搭起来的教学, 请依序输入
+
+ $ sudo npm install -g vue-cli
+
+ $ vue init webpack my-project
+
+ $ cd my-project
+
+ $ npm install
+
+ $ npm run dev
+
+# 3. vue-cli 使用 Mint-UI, 入门篇
+
+[Github / mint-UI for vuejs2 移动端 UI 库 ](http://mint-ui.github.io/docs/#!/zh-cn2)
+
+安装mint-ui, 指令如下:
+
+ $ npm install mint-ui -save
+
+.vue script
+
+ // 本人重 vue 全家桶的讲解,怎么使用 ui库,跟此目标不符
+ // 所有的 ui 库,使用原理,差不多,本示例,
+ // 只讲一点点 ui 知识点,让你看个几分钟,就自已抓来用…
+
+
+ // -- mint-ui start
+ // http://mint-ui.github.io/docs/#!/zh-cn2/button
+ // /my-project/node_modules/mint-ui/lib/button
+ import mtButton from 'mint-ui/lib/button';
+ import 'mint-ui/lib/button/style.css';
+
+ // http://mint-ui.github.io/docs/#!/zh-cn2/toast
+ // /my-project/node_modules/mint-ui/lib/toast
+ import { Toast } from 'mint-ui';
+ import 'mint-ui/lib/toast/style.css';
+ // -- mint-ui end
+
+
+### mint-ui 怎么用?
+
+ [demo / mint-ui ](https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/mint_ui1.html)
+
+ [源码 / mint_ui1.html](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1.html)
+
+ [源码 / mint_ui1.js](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1.js)
+
+ [源码 / mint_ui1v.vue](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1v.vue)
+
+**补充 mint_UI 点击问题修正**
+
+- 关于事件绑定
+- 在 Vue 2.0 中,为自定义组件绑定原生事件必须使用 __.native__ 修饰符:
+
+```js
+ Click Me
+```
+
+- 从易用性的角度出发,我们对 __Button__ 组件进行了处理,使它可以监听 __click__ 事件:
+
+```js
+ Click Me
+```
+
+- 但是对于其他组件,还是需要添加 __.native__ 修饰符。
+
+
+- 来源: http://mint-ui.github.io/docs/#!/zh-cn2
+
+# 4.多页应用
+
+因为讲解 npm run dev , npm run build 这两种多页设置,所以会讲这么40分钟这么久。自已有经验的话,看代码来抄,比较快,真的是初学者,还是建议看完吧,没有人会讲这么细。
+
+下例视频,内容都一样
+
+[视频 / vue-cli 多页应用(youtube)](https://youtu.be/J-0Vl68uKyY)
+
+[视频 / vue-cli 多页应用(百度云)](http://pan.baidu.com/s/1pL71opX)
+
+[视频 / vue-cli 多页应用(http://www.bilibili.com/)](http://www.bilibili.com/video/av6805317/)
\ No newline at end of file
diff --git a/vuejs2-form.md b/learn-vue-official-website/vuejs2-form.md
similarity index 58%
rename from vuejs2-form.md
rename to learn-vue-official-website/vuejs2-form.md
index 2d4206e..8054153 100644
--- a/vuejs2-form.md
+++ b/learn-vue-official-website/vuejs2-form.md
@@ -1,14 +1,16 @@
-# v-model 特性如下: (1)
+# 1. v-model 特性
-- v-model 并不关心表单控件初始化所生成的值。因为它会选择 Vue 实例数据来作为具体的值。
-- v-model 本质上不过是语法糖,它负责监听用户的输入事件以更新数据,并特别处理一些极端的例子。
-- 严格模式下的Vuex,在属于 Vuex 的 state (状态)上使用 v-model时会比较棘手(就是 vuex 不爱 v-model)
+v-model 并不关心表单控件初始化所生成的值。因为它会选择 Vue 实例数据来作为具体的值。
+v-model 本质上不过是语法糖,它负责监听用户的输入事件以更新数据,并特别处理一些极端的例子。
-# 文本 (2)
-## VUEX
+严格模式下的Vuex,在属于 Vuex 的 state (状态)上使用 v-model时会比较棘手(就是 vuex 不爱 v-model)
+
+
+# 2. 文本 textbox
+### VUEX
```js
@@ -41,14 +43,14 @@
}
```
-## 不用 vuex
+### 不用 vuex
```js
Message is: {{ dom }}
```
-###修饰符 .lazy
+#### 修饰符 .lazy
- 在默认情况下, v-model 在 input 事件中同步输入框的值与数据
- 但你可以添加一个修饰符 lazy ,从而转变为在 change 事件中同步:
@@ -57,7 +59,7 @@
```
-###修饰符 .number
+#### 修饰符 .number
- 如果想自动将用户的输入值转为 Number 类型
- (如果原值的转换结果为 NaN 则返回原值)
- 可以添加一个修饰符 number 给 v-model 来处理输入值:
@@ -68,7 +70,7 @@
- 这通常很有用,因为在 type="number" 时 HTML 中输入的值也总是会返回字符串类型。
-###修饰符 .trim
+#### 修饰符 .trim
- 如果要自动过滤用户输入的首尾空格,可以添加 trim 修饰符到 v-model 上过滤输入:
@@ -77,23 +79,23 @@
```
-# 多行文本 (3)
+# 3. 多行文本 textarea
-- 在文本区域插值( ) 并不会生效,应用 v-model 来代替
+ 在文本区域插值( ) 并不会生效,应用 v-model 来代替
```js
-Multiline message is:
-{{ dom }}
-
-
+ Multiline message is:
+ {{ dom }}
+
+
```
-# 单勾框 (4)
+# 4. 单勾框 checkbox
```js
-
-{{ checked }}
+
+ {{ checked }}
```
- 特别:
@@ -103,31 +105,31 @@
- 并且这个属性的值可以不是字符串。
```js
-
-
+
+
```
-# 多勾框 (5)
-## data,要有 数组 []
+# 5. 多勾框 checkbox
+### data,要有 数组 []
```js
-
-Jack
-
-John
-
-Mike
-
-Checked names: {{ dom }}
-
-
-new Vue({
- el: '...',
- data: {
- dom: []
- }
-})
+
+ Jack
+
+ John
+
+ Mike
+
+ Checked names: {{ dom }}
+
+
+ new Vue({
+ el: '...',
+ data: {
+ dom: []
+ }
+ })
```
- 特别:
@@ -138,98 +140,98 @@ new Vue({
```js
-
-// 当选中时
-vm.toggle === vm.a
-// 当没有选中时
-vm.toggle === vm.b
+
+ // 当选中时
+ vm.toggle === vm.a
+ // 当没有选中时
+ vm.toggle === vm.b
```
-# 单选框 (6)
+# 6. 单选框 radio
```js
-
-One
-
-
-Two
-
-dom: {{ dom }}
+
+ One
+
+
+ Two
+
+ dom: {{ dom }}
```
-- 特别:
-- 对于单选按钮,勾选框及选择列表选项
-- v-model 绑定的 value 通常是静态字符串(对于勾选框是逻辑值):
-- 但是有时我们想绑定 value 到 Vue 实例的一个动态属性上
-- 这时可以用 v-bind 实现
-- v-bind:value="vue data value"
-- 并且这个属性的值可以不是字符串。
-
-```js
-
-
-
-
-// 当选中时
-vm.pick === vm.a
-```js
+特别:
+对于单选按钮,勾选框及选择列表选项
+- v-model 绑定的 value 通常是静态字符串(对于勾选框是逻辑值):
+- 但是有时我们想绑定 value 到 Vue 实例的一个动态属性上
+- 这时可以用 v-bind 实现
+- v-bind:value="vue data value"
+- 并且这个属性的值可以不是字符串。
+```
+
+
+
+ // 当选中时
+ vm.pick === vm.a
+```
+# 7. 单选列表 select
+```js
+
+ A
+ B
+ C
+
+ dom: {{ dom }}
+```
+特别:
-# 单选列表(7)
-```js
-
- A
- B
- C
-
-dom: {{ dom }}
-```
+但是有时我们想绑定 value 到 Vue 实例的一个动态属性上
-- 特别:
-- 但是有时我们想绑定 value 到 Vue 实例的一个动态属性上
- 这时可以用 v-bind 实现
+
- v-bind:value="vue data value"
+
- 并且这个属性的值可以不是字符串。
```js
-
-
- ABC
-
+
+
+ ABC
+
```
---------------------------
-
-
-
- 123
-
-// 当选中时
-typeof vm.selected // -> 'object'
-vm.selected.number // -> 123
-
+```
+
+
+ 123
+
+ // 当选中时
+ typeof vm.selected // -> 'object'
+ vm.selected.number // -> 123
+```
-# 多选列表(8)
-## data (绑定到一个数组)
+# 8. 多选列表 select
+### data (绑定到一个数组)
```js
@@ -255,12 +257,12 @@ new Vue({
```
-# 日期 vue-flatpickr (9):
+# 9. 日期 plugins / vue-flatpickr
-## https://github.com/jrainlau/vue-flatpickr
+### https://github.com/jrainlau/vue-flatpickr
npm install vue-flatpickr
-## .vue script
+### .vue script
```js
```
-## .vue template
+### .vue template
```js
@@ -298,7 +300,7 @@ new Vue({
```
-## Data binding
+### Data binding
```js
The tag could be use as a normal tag
diff --git a/vue-router-learn.md b/learn-vue-router/vue-router-learn.md
similarity index 100%
rename from vue-router-learn.md
rename to learn-vue-router/vue-router-learn.md
diff --git a/vuex-learn.md b/learn-vuex/vuex-learn.md
similarity index 51%
rename from vuex-learn.md
rename to learn-vuex/vuex-learn.md
index 489319f..9f4e068 100644
--- a/vuex-learn.md
+++ b/learn-vuex/vuex-learn.md
@@ -5,9 +5,7 @@
- https://github.com/vuejs/vuex
-
-
# 1.如何安装 vuex (限定开发环境为 vue-cli)
@@ -49,8 +47,159 @@ vuex 是什么,怎么搭,以及 要有用什么角度来理解这个插件
> 3. actions (动作),用户在 视图 上的输入引起状态的更改的可能方式。
-> ### Vuex 观念 demo
+# 观念讲解 : vuex,action ,mutations 做什么用的?
+
+> 在讲解答案之前,先建立一个观念,vuex是一个模组,而这个模组,有 6个流程(见以下内容),请依序看完,才能对 vuex 的做基本的了解。仅对 action ,mutations这两个单字去拆解,你还是写不出 vuex 模组的配置。
+
+> 同步:
+> 当函数执行时,就得到结果,那这个函数就是同步的。
+
+> 异步:
+> 当函数执行时,不会马上有结果,甚至有时间差的问题,那这个函数就是异步的。
+
+
+## 观念讲解 : vuex,action ,mutations 做什么用的? (1) state
+
+> 中文翻译成「状态」,建议尽量用 state 这个单字来阅读 vuex 文檔,不然你脑海一直出现状态状态状态,反而会卡死。
+
+> 整个 vuex 是一颗 独立的 state tree,规定:只允许 mutation ,才能改变 state
+
+```js
+ const state = {
+ count: 0
+ }
+```
+
+## 观念讲解 : vuex,action ,mutations 做什么用的?(2) mutation
+
+> 更改 Vuex 的 store 中的 state 的唯一方法是提交 mutation。
+
+> mutation,会与插件 devtools 协作,当 mutation 有变化时, 就做 state 的纪录,来协助开发者 debug,所以这里的函数要求同步,以便插件来调试。
+
+
+> 来源:https://vuex.vuejs.org/zh-cn/mutations.html
+
+``` js
+// 建议把此区当做事件注册来看(同步不是马上执行的意思,而是在当函数执行时,就得到结果)
+const mutations = {
+ increment(state) {
+ state.count++
+ },
+ decrement(state) {
+ state.count--
+ }
+}
+
+```
+
+## 观念讲解 : vuex,action ,mutations 做什么用的?(3) Action
+
+> 类似于 mutation,不同在于:
+
+> Action 提交的是 mutation(让 mutation 处理插件的调试工作 ),而不是直接变更 state 。
+
+> Action 的函数可以包含任意异步操作,但永远只提交 mutation。
+
+> 来源:https://vuex.vuejs.org/zh-cn/actions.html
+
+```js
+// 建议把此区当做事件注册来看, action 也不是马上就执行,只向 mutation 做 commit 的指令。
+
+const actions = {
+ increment: ({
+ commit
+ }) => commit('increment'),
+ decrement: ({
+ commit
+ }) => commit('decrement'),
+ incrementIfOdd({
+ commit,
+ state
+ }) {
+ if ((state.count + 1) % 2 === 0) {
+ commit('increment')
+ }
+ },
+
+ // 如果 action 有异步的要求时,可以参考下列的写法,对 mutation 提出 commit 。
+ incrementAsync({
+ commit
+ }) {
+ return new Promise((resolve, reject) => {
+ setTimeout(() => {
+ commit('increment')
+ resolve()
+ }, 1000)
+ })
+ }
+
+```
+
+## 观念讲解 : vuex,action ,mutations 做什么用的?(4) getters
+
+> 请当做 计算属性来写,所有的 getter, 接收 完整的state树,做第一个参数
+
+``` js
+const getters = {
+ evenOrOdd: state => state.count % 2 === 0 ? '偶数' : '奇数'
+}
+
+```
+
+## 观念讲解 : vuex,action ,mutations 做什么用的?(5) (Vuex 实例依 state, mutations, actions,and getters 组合)
+
+```js
+// 小凡 (Vuex 实例依 state, mutations, actions,and getters 组合)
+export default new Vuex.Store({
+ state,
+ getters,
+ actions,
+ mutations
+})
+```
+
+## 观念讲解 : vuex,action ,mutations 做什么用的?(6) .vue 使用 mapGetters, mapActions,操作 Vuex.
+
+> 前面的工作做好了,到了 .vue , 就只是下指令,单纯执行 getter,action
+
+```js
+
+
+
+
+
点击: {{ $store.state.count }} 次数,此為 {{ evenOrOdd }}
+ +
+ -
+ 业务设计:当 奇数时,才增加
+ 业务设计:1秒后,才会增加 1
+
+
+
+
+
+```
+
+
+
+
+
+### Vuex 观念 demo
+
> - demo https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/vuex01.html
+
> - 源码 https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/v01_app.js
> - 源码 https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/v01.vue
diff --git a/my-project/build/webpack.base.conf.js b/my-project/build/webpack.base.conf.js
index 387ff29..fa169a2 100644
--- a/my-project/build/webpack.base.conf.js
+++ b/my-project/build/webpack.base.conf.js
@@ -14,7 +14,8 @@ module.exports = {
shopping_cart: './src/vuex-demo/shopping-cart/app.js', // shopping_cart
todomvc: './src/vuex-demo/todomvc/app.js', // todomvc
mint_ui1: './src/vuex-demo/mint_ui1.js', // mint_ui1.js
- treeview: './src/vuejs2-demo/treeview/app.js' // treeview.js
+ treeview: './src/vuejs2-demo/treeview/app.js', // treeview.js
+ iscomponent:'./src/vuejs2-demo/is-component/main.js' // iscomponent
},
output: {
path: config.build.assetsRoot,
diff --git a/my-project/build/webpack.dev.conf.js b/my-project/build/webpack.dev.conf.js
index 7ce7a9c..a575cb8 100644
--- a/my-project/build/webpack.dev.conf.js
+++ b/my-project/build/webpack.dev.conf.js
@@ -106,7 +106,14 @@ module.exports = merge(baseWebpackConfig, {
chunks: ['treeview'], //需要引入的chunk,不配置就会引入所有页面的资源
}),
// --------多頁 end
-
+ // --------多頁 start
+ new HtmlWebpackPlugin({
+ filename: 'iscomponent.html',
+ template: 'src/vuejs2-demo/is-component/index.html',
+ inject: true,
+ chunks: ['iscomponent'], //需要引入的chunk,不配置就会引入所有页面的资源
+ }),
+ // --------多頁 end
]
})
diff --git a/my-project/build/webpack.prod.conf.js b/my-project/build/webpack.prod.conf.js
index 6c5ce6d..5598c36 100644
--- a/my-project/build/webpack.prod.conf.js
+++ b/my-project/build/webpack.prod.conf.js
@@ -210,7 +210,20 @@ var webpackConfig = merge(baseWebpackConfig, {
chunksSortMode: 'dependency'
}),
//----------多页 end
- //
+ //----------多页 start
+ new HtmlWebpackPlugin({
+ filename: '../dist/iscomponent.html',
+ template: 'src/vuejs2-demo/is-component/index.html',
+ inject: true,
+ minify: {
+ removeComments: true,
+ collapseWhitespace: true,
+ removeAttributeQuotes: true
+ },
+ chunks: ['manifest', 'vendor', 'iscomponent'], //需要引入的chunk,不配置就会引入所有页面的资源
+ chunksSortMode: 'dependency'
+ }),
+ //----------多页 end
//
//
diff --git a/my-project/src/App.vue b/my-project/src/App.vue
index 2205bd3..020cbe7 100644
--- a/my-project/src/App.vue
+++ b/my-project/src/App.vue
@@ -10,21 +10,76 @@
VueJs 豪哥的QQ群:364912432
第01章:vue-cli
第02章:Vuex
第03章:vue.js 2 示例区
@@ -53,7 +108,7 @@ body {
#app {
color: #2c3e50;
margin-top: -100px;
- max-width: 600px;
+ max-width: 900px;
font-family: Source Sans Pro, Helvetica, sans-serif;
text-align: center;
}
@@ -61,6 +116,8 @@ body {
#app a {
color: #42b983;
text-decoration: none;
+
+
}
.logo {
@@ -70,5 +127,17 @@ body {
li {
list-style-type: none;
+ text-align:left;
+ line-height:20px;
+}
+.right {
+ /*
+ text-align: left;
+ float: left;
+ */
+}
+.list-item {
+ display: inline-block;
+ width:500px;
}
diff --git a/my-project/src/vuejs2-demo/is-component/App.vue b/my-project/src/vuejs2-demo/is-component/App.vue
new file mode 100644
index 0000000..fe865b2
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/App.vue
@@ -0,0 +1,24 @@
+
+
+
is 动态组件
+
+
+
+
+
+
\ No newline at end of file
diff --git a/my-project/src/vuejs2-demo/is-component/components/a.vue b/my-project/src/vuejs2-demo/is-component/components/a.vue
new file mode 100644
index 0000000..17f9a59
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/components/a.vue
@@ -0,0 +1,14 @@
+
+
+ 123
+
+
+
diff --git a/my-project/src/vuejs2-demo/is-component/components/b.vue b/my-project/src/vuejs2-demo/is-component/components/b.vue
new file mode 100644
index 0000000..2f284a4
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/components/b.vue
@@ -0,0 +1,14 @@
+
+
+ 456
+
+
+
diff --git a/my-project/src/vuejs2-demo/is-component/components/c.vue b/my-project/src/vuejs2-demo/is-component/components/c.vue
new file mode 100644
index 0000000..daabef2
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/components/c.vue
@@ -0,0 +1,15 @@
+
+
+ 789
+
+
+
\ No newline at end of file
diff --git a/my-project/src/vuejs2-demo/is-component/components/footer.vue b/my-project/src/vuejs2-demo/is-component/components/footer.vue
new file mode 100644
index 0000000..971cf6f
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/components/footer.vue
@@ -0,0 +1,26 @@
+
+
+
+
\ No newline at end of file
diff --git a/my-project/src/vuejs2-demo/is-component/components/header.vue b/my-project/src/vuejs2-demo/is-component/components/header.vue
new file mode 100644
index 0000000..3dac6c3
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/components/header.vue
@@ -0,0 +1,19 @@
+
+
+
+
diff --git a/my-project/src/vuejs2-demo/is-component/index.html b/my-project/src/vuejs2-demo/is-component/index.html
new file mode 100644
index 0000000..7749de1
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/index.html
@@ -0,0 +1,11 @@
+
+
+
+
+ Tree View
+
+
+
+
+
+
diff --git a/my-project/src/vuejs2-demo/is-component/main.js b/my-project/src/vuejs2-demo/is-component/main.js
new file mode 100644
index 0000000..316037d
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/main.js
@@ -0,0 +1,8 @@
+
+import Vue from 'vue'
+import App from './App.vue'
+
+new Vue({
+ el: '#app',
+ render: h => h(App)
+})
diff --git a/my-project/src/vuejs2-demo/is-component/view/Home.vue b/my-project/src/vuejs2-demo/is-component/view/Home.vue
new file mode 100644
index 0000000..f044710
--- /dev/null
+++ b/my-project/src/vuejs2-demo/is-component/view/Home.vue
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
123
+
213
+
321
+
+
+
+
\ No newline at end of file
diff --git a/my-project/src/vuejs2-demo/treeview/app.vue b/my-project/src/vuejs2-demo/treeview/app.vue
index 21c94ad..1bb2ba4 100644
--- a/my-project/src/vuejs2-demo/treeview/app.vue
+++ b/my-project/src/vuejs2-demo/treeview/app.vue
@@ -3,7 +3,7 @@
(双点击可以将项目转成目录) Vue.JS2 官网 树 for vue-cli
@@ -12,29 +12,41 @@
// demo data
var data1 = {
name: 'root',
+ no: '1',
children: [{
- name: 'hello'
+ name: 'hello',
+ no: '2',
}, {
- name: 'wat'
+ name: 'wat',
+ no: '3',
}, {
name: 'child folder',
+ no: '4',
children: [{
name: 'child folder',
+ no: '5',
children: [{
- name: 'hello'
+ name: 'hello',
+ no: '6',
}, {
- name: 'wat'
+ name: 'wat',
+ no: '7',
}]
}, {
- name: 'hello'
+ name: 'hello',
+ no: '8',
}, {
- name: 'wat'
+ name: 'wat',
+ no:'9',
}, {
name: 'child folder',
+ no:'10',
children: [{
- name: 'hello'
+ name: 'hello',
+ no:'11',
}, {
- name: 'wat'
+ name: 'wat',
+ no:'12',
}]
}]
}]
diff --git a/my-project/src/vuex-demo/mint_ui1v.vue b/my-project/src/vuex-demo/mint_ui1v.vue
index 95e2404..1d08691 100644
--- a/my-project/src/vuex-demo/mint_ui1v.vue
+++ b/my-project/src/vuex-demo/mint_ui1v.vue
@@ -2,7 +2,9 @@
{{ msg }}
- mint Button demo (无法执行)
+ mint Button demo (@click)
+
+ mint Button demo (@click.native)
原生 Button demo
diff --git a/npm-debug.log b/npm-debug.log
new file mode 100644
index 0000000..bebecab
--- /dev/null
+++ b/npm-debug.log
@@ -0,0 +1,22 @@
+0 info it worked if it ends with ok
+1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
+1 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
+1 verbose cli 'run',
+1 verbose cli 'dev' ]
+2 info using npm@3.10.8
+3 info using node@v7.0.0
+4 verbose stack Error: ENOENT: no such file or directory, open 'E:\github\vuejs2-learn\package.json'
+5 verbose cwd E:\github\vuejs2-learn
+6 error Windows_NT 6.1.7601
+7 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "dev"
+8 error node v7.0.0
+9 error npm v3.10.8
+10 error path E:\github\vuejs2-learn\package.json
+11 error code ENOENT
+12 error errno -4058
+13 error syscall open
+14 error enoent ENOENT: no such file or directory, open 'E:\github\vuejs2-learn\package.json'
+15 error enoent ENOENT: no such file or directory, open 'E:\github\vuejs2-learn\package.json'
+15 error enoent This is most likely not a problem with npm itself
+15 error enoent and is related to npm not being able to find a file.
+16 verbose exit [ -4058, true ]
diff --git a/readme.md b/readme.md
index 228311c..a52ae44 100644
--- a/readme.md
+++ b/readme.md
@@ -1,227 +1,153 @@
# 教程主旨
- vue.js 2 官网讲解(以下是自我要求,小凡,不要你花时间在 看视频以及打代码上,那有多浪费时间,以及装B)
+vue.js 2 官网讲解(以下是自我要求,小凡,不要你花时间在 看视频以及打代码上,那有多浪费时间)
-- 1.全程用 vue-cli 讲解
+- 全程用 vue-cli 讲解
-- 2.所有代码在 https://github.com/bhnddowinf/vuejs2-learn ,你 copy 改改,就好。
+- 所有代码在 https://github.com/bhnddowinf/vuejs2-learn ,你 copy 改改,就好。
-- 3.所有代码 demo 在 https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/index.html
+- 所有代码 demo 在 https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/index.html
- 本人用 yarn
+- 個人使用 yarn
-- 4.所有章节视频会在 Youtube, bilibili.com
+- 所有章节视频会在 Youtube, bilibili.com 看到
-- 百度云上传有所管制(锁1g,锁 影片)。
+- 百度云上传有所管制(锁1g,锁 mp4, mov,難以上傳)。
-# 系列教程
-
-## 1.vue-cli
-
-### 1-1.vue-cli 简介
-
-- 简单介绍
-
-> [vuejs/vue-cli: Simple CLI for scaffolding Vue.js projects] (https://github.com/vuejs/vue-cli)
-
-- [视频:vue-cli 简介,与 套用 mint-ui demo (youtube) ] (https://youtu.be/AwjfG5T3vO4)
-
-- [视频:vue-cli 简介,与 套用 mint-ui demo (bilibili)] (http://www.bilibili.com/video/av6828349/)
-
-#### vue.js 2 vue-cli how to start
-
-vue.js2 vue-cli 怎么搭起来的教学
-
-``` js
- sudo npm install -g vue-cli
-
- vue init webpack my-project
-
- cd my-project
-
- npm install
-
- npm run dev
-
-```
-> [mint-UI for vuejs2] (http://mint-ui.github.io/docs/#!/zh-cn2) 移动端 UI 库
-
-
-#### 安装
-
-``` js
-
-npm install mint-ui -save
-
-```
-
-``` js
-// 本人重 vue 全家桶的讲解,怎么使用 ui库,跟此目标不符
-
-// 所有的 ui 库,使用原理,差不多,本示例,
-
-// 只讲一点点 ui 知识点,让你看个几分钟,就自已抓来用…
-
-
-// -- mint-ui start
-// http://mint-ui.github.io/docs/#!/zh-cn2/button
-// /my-project/node_modules/mint-ui/lib/button
-import mtButton from 'mint-ui/lib/button';
-import 'mint-ui/lib/button/style.css';
-
-// http://mint-ui.github.io/docs/#!/zh-cn2/toast
-// /my-project/node_modules/mint-ui/lib/toast
-import { Toast } from 'mint-ui';
-import 'mint-ui/lib/toast/style.css';
-// -- mint-ui end
-
-```
+# 豪哥的QQ群
+小弟在互联网有一个爱好前端的朋友,网名:豪情,不断贡献自已的知识分享最先进的前端资讯,带领着很多人学习前端。
-#### mint-ui 怎么用?(个人实测…有坑,但还是可以用)
+小弟有幸能结交豪哥,以下是中国最专业的前端群, 仅供参考.
-- [mint-ui demo] (https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/mint_ui1.html)
+- Vuejs-2群 631586939
-- [源码:mint_ui1.html] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1.html)
+- JAVA技术交流群 145381037
-- [源码:mint_ui1.js] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1.js)
+- Python技术交流群 130705066
-- [源码:mint_ui1v.vue] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuex-demo/mint_ui1v.vue)
+- Hybrid App交流群 498173484
+- PHP技术交流群 82254462
-### 1-2.多页应用
+- UI设计么么哒群 321173051
-- 因为讲解 npm run dev , npm run build 这两种多页设置,所以会讲这么40分钟这么久。自已有经验的话,看代码来抄,比较快,真的是初学者,还是建议看完吧,没有人会讲这么细。
+- Go语言技术交流群 336195657
-- vuejs2 多页应用讲解https://github.com/bhnddowinf/vuejs2-learn
+- ASP.NET C#技术交流群 461614624
- 使用 vue-cli 一定用到的多页应用
+- 安卓IOS混合开发群 415074410
- 教你怎么跑 npm run dev, npm run build
+- JS前端开发跳板1群 492107297
-> [视频: vue-cli 多页应用(youtube)](https://youtu.be/J-0Vl68uKyY)
-> [视频:vue-cli 多页应用(百度云)](http://pan.baidu.com/s/1pL71opX)
-> [视频:vue-cli 多页应用(http://www.bilibili.com/)](http://www.bilibili.com/video/av6805317/)
-## 2.Vuex
+#台湾小凡
-### 2-1.[vuex 台湾小凡教程文档] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/vuex-learn.md)
+
+ 1. 目前在台湾的中小企业
+ 2. 担任资讯研发部副理
+ 3. 手机:0922-731455
+ 4. 信箱:bhnddowinf@yahoo.com.tw
-## 3.Vue-Router
+## 台湾小凡的专长:
-### 3-1.[vue-router 台湾小凡教程文档] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/vue-router-learn.md)
+ 1. 云端伺服器建置
+ 2. 网站开发
+ 3. 企业资源规划系统
-# 教程目的
-- 网路上有很多 VUE 综合应用的视频,但大部份的视频 ,都当你已经了解官网
- 所以讲的节奏难免偏快。
- 此视频,以官网为重,将官网的观念,以视频搭配代码,实际演示。
- 如果官网有看不懂的地方,比对一下,视频跟代码,就会了解了。
- 减少你摸索的时间。
+## License
-## 4.vue.js2 demo
+ [MIT](http://opensource.org/licenses/MIT)
-> treeview
+## Donate
-- [Tree View Demo] (https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/treeview.html)
+ 小弟想把 vue.js 教学的视频,做的更好
+ 但现实上,这需要很多的时间以及家人的支持
-- [app.js] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/app.js)
+ [赞助一点给作者](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=77E3EEHBD3N5C)
-- [app.vue] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/app.vue)
+ 
-- [index.html] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/index.html)
-- [item-template.vue] (https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/)
+# 系列教程
+### 1. vue-cli
-# vuejs 2 相关链结
+[台湾小凡教程文档 / vue-cli](https://github.com/bhnddowinf/vuejs2-learn/blob/master/learn-vue-cli/vue-cli.md)
-- [台湾小凡 vuejs2demo] (https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/index.html) 台湾小凡 vue.js2 的 demo
+### 2. vue official website
-- [vue.js 2 官网] (http://vuejs.org) 正式 vue.js2 尤雨溪大神 官方网站
+[台湾小凡教程文档 / 讲解 form 篇](https://github.com/bhnddowinf/vuejs2-learn/blob/master/learn-vue-official-website/vuejs2-form.md)
-- [http://vue.sike.io vue.js 2 双语网站] (http://vue.sike.io) vue2 全家桶双语网站
+vue.js2 demo - Tree View
-- [http://vuefe.cn vue.js 2 中文网站] (http://vuefe.cn) vue2 全家桶中文网站
+- [示例 / Tree View for vue.js2](https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/treeview.html)
-- [http://vuefe.cn/about/ 贡献翻译群] (http://vuefe.cn/about/) vue2 全家桶中文网站翻译群,衷心感谢,贡献心力制作
+- [源代码 / app.js](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/app.js)
-- [从 Vue1.x 迁移] (http://vuefe.cn/guide/migration.html) 怎么从 vue1 升级至 vue2,升级指南
+- [源代码 / app.vue](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/app.vue)
-- [从Vue Router 0.7.x迁移] (http://vuefe.cn/guide/migration-vue-router.html) vue-router 升级指南
+- [源代码 / index.html](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/index.html)
-- [vuejs/vue-cli: Simple CLI for scaffolding Vue.js projects] (https://github.com/vuejs/vue-cli) vue-cli
+- [源代码 / item-template.vue](https://github.com/bhnddowinf/vuejs2-learn/blob/master/my-project/src/vuejs2-demo/treeview/)
-- [最完整 vue 資源合集] (https://github.com/vuejs/awesome-vue) awesome-vue
-- [vuex 原文文档] (http://vuex.vuejs.org/en/index.html) 尤雨溪大神
-- [mint-UI for vuejs2] (http://mint-ui.github.io/docs/#!/zh-cn2) 移动端 UI 库
+### 3. Vuex
-# 國外 ajax 主流插件 (vue-resource 作者不更新了)
+[台湾小凡教程文档 / vuex ](https://github.com/bhnddowinf/vuejs2-learn/blob/master/learn-vuex/vuex-learn.md)
-- https://github.com/github/fetch
-- https://github.com/mzabriskie/axios
+### 4. Vue-Router
-- https://github.com/naugtur/xhr
+[ 台湾小凡教程文档 / vue-router ](https://github.com/bhnddowinf/vuejs2-learn/blob/master/learn-vue-router/vue-router-learn.md)
+### 5.vue-rx
+- [rx.js 官网](https://github.com/Reactive-Extensions/RxJS)
-# 豪哥的QQ群
+- [rx.js 官网 / 示例](https://github.com/Reactive-Extensions/RxJS/tree/master/examples)
-- 小弟在互联网有一个爱好前端的朋友,网名:豪情,不断贡献自已的知识分享最先进的前端资讯,带领着很多人学习前端。
+- [文章 / rx.js 设计指南](https://github.com/Reactive-Extensions/RxJS/tree/master/doc/designguidelines)
-- 小弟有幸能结交豪哥,以下是中国最专业的前端群, 仅供参考.
+- [Github / vue-rx](https://github.com/vuejs/vue-rx)
-> * vuejs 364912432
-> * Angularjs 238251402
-> * React 530415177
-> * Nodejs 422910907
-> * JAVA高级开发群 145381037
-> * Python技术交流 130705066
-> * Hybrid App交流群 498173484
-> * PHP技术交流群 82254462
-> * UI设计么么哒群 321173051
-> * Go语言技术交流群 336195657
-> * ASP.NET C#技术交流群 461614624
-> * 安卓IOS混合开发群 415074410
+### 6. vue.js 2 相关链结
-
+- [台湾小凡 vue.js2 / demo](https://bhnddowinf.github.io/bhnddowinf/vuejs2demo/index.html)
+- [vue.js2 官方网站](http://vuejs.org)
-#台湾小凡
+- [vue.js2 网站 / vue.sike.io](http://vue.sike.io)
-
+- [vue.js2 网站 / vuefe.cn](http://vuefe.cn)
- 目前在台湾的中小企业
+- [vue.js2 网站 / vuefe.cn / 贡献翻译群](http://vuefe.cn/about/)
- 担任资讯研发部副理
+- [文章 / 从 Vue1.x 迁移至 vue2](http://vuefe.cn/guide/migration.html)
- 手机:0922-731455
+- [文章 / 从Vue Router 0.7.x迁移至 vue2](http://vuefe.cn/guide/migration-vue-router.html)
- 信箱:bhnddowinf@yahoo.com.tw
+- [Github / vue-cli / Simple CLI for scaffolding Vue.js projects](https://github.com/vuejs/vue-cli)
-## 台湾小凡的专长:
+- [Github / awesome-vue 最完整 vue 資源合集](https://github.com/vuejs/awesome-vue)
- 1.云端伺服器建置
- 2.网站开发
- 3.企业资源规划系统
+- [Github / vuex](http://vuex.vuejs.org/en/index.html)
+- [Github / mint-UI for vuejs2](http://mint-ui.github.io/docs/#!/zh-cn2)
-## License
+### 7. 國外 ajax 主流插件 (vue-resource 作者不更新了)
- [MIT](http://opensource.org/licenses/MIT)
+- [Github / axios 尤大推荐](https://github.com/mzabriskie/axios)
-## Donate
+- [Github / fetch ](https://github.com/github/fetch)
- 小弟想把 vue.js 教学的视频,做的更好
- 但现实上,这需要很多的时间以及家人的支持
+- [Github / xhr](https://github.com/naugtur/xhr)
- →→→→[请大力的鼓励作者] (https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=77E3EEHBD3N5C)
+- [Github / reqwest](https://github.com/ded/reqwest)
- 