├── vue-http ├── public │ ├── favicon.ico │ └── index.html ├── babel.config.js ├── src │ ├── assets │ │ └── logo.png │ ├── main.js │ ├── mixins │ │ └── counter.js │ ├── components │ │ ├── HoverCounter.vue │ │ ├── ClickCounter.vue │ │ ├── TemplateRef.vue │ │ ├── Child.vue │ │ ├── Parent.vue │ │ ├── PostList.vue │ │ └── CreatePost.vue │ └── App.vue ├── .gitignore ├── README.md └── package.json ├── hello-world ├── babel.config.js ├── public │ ├── favicon.ico │ └── index.html ├── src │ ├── assets │ │ └── logo.png │ ├── main.js │ └── App.vue ├── .gitignore ├── README.md └── package.json ├── vue-components ├── babel.config.js ├── public │ ├── favicon.ico │ └── index.html ├── src │ ├── assets │ │ └── logo.png │ ├── main.js │ ├── components │ │ ├── TabA.vue │ │ ├── TabB.vue │ │ ├── Portal.vue │ │ ├── ChildStyles.vue │ │ ├── Greet.vue │ │ ├── ComponentF.vue │ │ ├── TabC.vue │ │ ├── ComponentC.vue │ │ ├── ComponentE.vue │ │ ├── Article.vue │ │ ├── Popup.vue │ │ ├── Input.vue │ │ ├── NameList.vue │ │ └── Card.vue │ └── App.vue ├── .gitignore ├── README.md └── package.json ├── vue-composition ├── babel.config.js ├── public │ ├── favicon.ico │ └── index.html ├── src │ ├── assets │ │ └── logo.png │ ├── main.js │ ├── mixins │ │ └── counter.js │ ├── components │ │ ├── ChildA.vue │ │ ├── ChildB.vue │ │ ├── DemoOne.vue │ │ ├── TemplateRef.vue │ │ ├── DemoTwo.vue │ │ ├── HoverCounter.vue │ │ ├── ClickCounter.vue │ │ ├── LifecycleO.vue │ │ ├── PersonGreeting.vue │ │ ├── Person.vue │ │ ├── LifecycleC.vue │ │ ├── ChildC.vue │ │ ├── VModel.vue │ │ ├── Methods.vue │ │ ├── ProvideInject.vue │ │ ├── Data.vue │ │ ├── Computed.vue │ │ └── Watch.vue │ ├── composables │ │ └── useCounter.js │ └── App.vue ├── .gitignore ├── README.md └── package.json └── vue-fundamentals ├── babel.config.js ├── public ├── favicon.ico └── index.html ├── src ├── assets │ └── logo.png ├── main.js └── App.vue ├── .gitignore ├── README.md └── package.json /vue-http/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-http/public/favicon.ico -------------------------------------------------------------------------------- /vue-http/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /vue-http/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-http/src/assets/logo.png -------------------------------------------------------------------------------- /hello-world/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /hello-world/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/hello-world/public/favicon.ico -------------------------------------------------------------------------------- /hello-world/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/hello-world/src/assets/logo.png -------------------------------------------------------------------------------- /vue-components/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /vue-components/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-components/public/favicon.ico -------------------------------------------------------------------------------- /vue-components/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-components/src/assets/logo.png -------------------------------------------------------------------------------- /vue-composition/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /vue-composition/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-composition/public/favicon.ico -------------------------------------------------------------------------------- /vue-fundamentals/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/cli-plugin-babel/preset' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /vue-http/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | 4 | createApp(App).mount('#app') 5 | -------------------------------------------------------------------------------- /hello-world/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | 4 | createApp(App).mount('#app') 5 | -------------------------------------------------------------------------------- /vue-components/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | 4 | createApp(App).mount('#app') 5 | -------------------------------------------------------------------------------- /vue-composition/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-composition/src/assets/logo.png -------------------------------------------------------------------------------- /vue-composition/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | 4 | createApp(App).mount('#app') 5 | -------------------------------------------------------------------------------- /vue-fundamentals/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-fundamentals/public/favicon.ico -------------------------------------------------------------------------------- /vue-fundamentals/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gopinav/Vue-3-Tutorials/HEAD/vue-fundamentals/src/assets/logo.png -------------------------------------------------------------------------------- /vue-fundamentals/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import App from './App.vue' 3 | 4 | createApp(App).mount('#app') 5 | -------------------------------------------------------------------------------- /vue-components/src/components/TabA.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /vue-components/src/components/TabB.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /vue-components/src/components/Portal.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /vue-http/src/mixins/counter.js: -------------------------------------------------------------------------------- 1 | export default { 2 | data() { 3 | return { 4 | count: 0 5 | } 6 | }, 7 | methods: { 8 | incrementCount() { 9 | this.count += 1 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /vue-composition/src/mixins/counter.js: -------------------------------------------------------------------------------- 1 | export default { 2 | data() { 3 | return { 4 | count: 0 5 | } 6 | }, 7 | methods: { 8 | incrementCount() { 9 | this.count += 1 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /vue-components/src/components/ChildStyles.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /vue-components/src/components/Greet.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 11 | 12 | -------------------------------------------------------------------------------- /vue-components/src/components/ComponentF.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /vue-composition/src/components/ChildA.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 15 | 16 | -------------------------------------------------------------------------------- /vue-composition/src/components/ChildB.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 15 | 16 | -------------------------------------------------------------------------------- /vue-components/src/components/TabC.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 16 | 17 | -------------------------------------------------------------------------------- /vue-components/src/components/ComponentC.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 15 | 16 | -------------------------------------------------------------------------------- /vue-components/src/components/ComponentE.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 15 | 16 | -------------------------------------------------------------------------------- /vue-http/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /hello-world/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /vue-components/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /vue-composition/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /vue-composition/src/composables/useCounter.js: -------------------------------------------------------------------------------- 1 | import { ref } from 'vue' 2 | 3 | function useCounter(initialCount = 0, stepSize = 1) { 4 | const count = ref(initialCount) 5 | function incrementCount() { 6 | count.value += stepSize 7 | } 8 | 9 | return { 10 | count, 11 | incrementCount 12 | } 13 | } 14 | 15 | export default useCounter 16 | -------------------------------------------------------------------------------- /vue-fundamentals/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | 6 | # local env files 7 | .env.local 8 | .env.*.local 9 | 10 | # Log files 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # Editor directories and files 17 | .idea 18 | .vscode 19 | *.suo 20 | *.ntvs* 21 | *.njsproj 22 | *.sln 23 | *.sw? 24 | -------------------------------------------------------------------------------- /vue-http/src/components/HoverCounter.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 14 | 15 | -------------------------------------------------------------------------------- /vue-http/README.md: -------------------------------------------------------------------------------- 1 | # vue-http 2 | 3 | ## Project setup 4 | ``` 5 | yarn install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | yarn serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | yarn build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | yarn lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /hello-world/README.md: -------------------------------------------------------------------------------- 1 | # hello-world 2 | 3 | ## Project setup 4 | ``` 5 | yarn install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | yarn serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | yarn build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | yarn lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /vue-composition/src/components/DemoOne.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 21 | 22 | -------------------------------------------------------------------------------- /hello-world/src/App.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 11 | 12 | 22 | -------------------------------------------------------------------------------- /vue-components/README.md: -------------------------------------------------------------------------------- 1 | # vue-components 2 | 3 | ## Project setup 4 | ``` 5 | yarn install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | yarn serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | yarn build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | yarn lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /vue-http/src/components/ClickCounter.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 19 | 20 | -------------------------------------------------------------------------------- /vue-composition/README.md: -------------------------------------------------------------------------------- 1 | # vue-composition 2 | 3 | ## Project setup 4 | ``` 5 | yarn install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | yarn serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | yarn build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | yarn lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /vue-fundamentals/README.md: -------------------------------------------------------------------------------- 1 | # vue-fundamentals 2 | 3 | ## Project setup 4 | ``` 5 | yarn install 6 | ``` 7 | 8 | ### Compiles and hot-reloads for development 9 | ``` 10 | yarn serve 11 | ``` 12 | 13 | ### Compiles and minifies for production 14 | ``` 15 | yarn build 16 | ``` 17 | 18 | ### Lints and fixes files 19 | ``` 20 | yarn lint 21 | ``` 22 | 23 | ### Customize configuration 24 | See [Configuration Reference](https://cli.vuejs.org/config/). 25 | -------------------------------------------------------------------------------- /vue-http/src/components/TemplateRef.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 21 | 22 | -------------------------------------------------------------------------------- /vue-composition/src/components/TemplateRef.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 27 | 28 | -------------------------------------------------------------------------------- /vue-composition/src/components/DemoTwo.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 24 | 25 | -------------------------------------------------------------------------------- /vue-composition/src/components/HoverCounter.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 23 | 24 | -------------------------------------------------------------------------------- /vue-composition/src/components/ClickCounter.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 22 | 23 | -------------------------------------------------------------------------------- /vue-components/src/components/Article.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 27 | 28 | -------------------------------------------------------------------------------- /vue-components/src/components/Popup.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 29 | 30 | -------------------------------------------------------------------------------- /vue-components/src/components/Input.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 18 | 19 | -------------------------------------------------------------------------------- /vue-http/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /hello-world/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vue-composition/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vue-fundamentals/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vue-components/src/components/NameList.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 30 | 31 | -------------------------------------------------------------------------------- /vue-components/src/components/Card.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /vue-components/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | <%= htmlWebpackPlugin.options.title %> 9 | 10 | 11 | 14 |
15 |
16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /vue-http/src/components/Child.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 34 | 35 | -------------------------------------------------------------------------------- /vue-composition/src/components/LifecycleO.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 34 | 35 | -------------------------------------------------------------------------------- /vue-composition/src/components/PersonGreeting.vue: -------------------------------------------------------------------------------- 1 | 5 | 6 | 33 | 34 | -------------------------------------------------------------------------------- /vue-composition/src/components/Person.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 37 | 38 | -------------------------------------------------------------------------------- /vue-composition/src/components/LifecycleC.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 38 | 39 | -------------------------------------------------------------------------------- /vue-composition/src/components/ChildC.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 30 | 31 | -------------------------------------------------------------------------------- /vue-composition/src/components/VModel.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 40 | 41 | -------------------------------------------------------------------------------- /vue-http/src/components/Parent.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 45 | 46 | -------------------------------------------------------------------------------- /vue-http/src/components/PostList.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 43 | 44 | -------------------------------------------------------------------------------- /vue-http/src/App.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 35 | 36 | 46 | -------------------------------------------------------------------------------- /hello-world/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hello-world", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "core-js": "^3.6.5", 12 | "vue": "^3.0.0" 13 | }, 14 | "devDependencies": { 15 | "@vue/cli-plugin-babel": "~4.5.0", 16 | "@vue/cli-plugin-eslint": "~4.5.0", 17 | "@vue/cli-service": "~4.5.0", 18 | "@vue/compiler-sfc": "^3.0.0", 19 | "babel-eslint": "^10.1.0", 20 | "eslint": "^6.7.2", 21 | "eslint-plugin-vue": "^7.0.0-0" 22 | }, 23 | "eslintConfig": { 24 | "root": true, 25 | "env": { 26 | "node": true 27 | }, 28 | "extends": [ 29 | "plugin:vue/vue3-essential", 30 | "eslint:recommended" 31 | ], 32 | "parserOptions": { 33 | "parser": "babel-eslint" 34 | }, 35 | "rules": {} 36 | }, 37 | "prettier": { 38 | "semi": false, 39 | "singleQuote": true 40 | }, 41 | "browserslist": [ 42 | "> 1%", 43 | "last 2 versions", 44 | "not dead" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /vue-components/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-components", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "core-js": "^3.6.5", 12 | "vue": "^3.0.0" 13 | }, 14 | "devDependencies": { 15 | "@vue/cli-plugin-babel": "~4.5.0", 16 | "@vue/cli-plugin-eslint": "~4.5.0", 17 | "@vue/cli-service": "~4.5.0", 18 | "@vue/compiler-sfc": "^3.0.0", 19 | "babel-eslint": "^10.1.0", 20 | "eslint": "^6.7.2", 21 | "eslint-plugin-vue": "^7.0.0-0" 22 | }, 23 | "eslintConfig": { 24 | "root": true, 25 | "env": { 26 | "node": true 27 | }, 28 | "extends": [ 29 | "plugin:vue/vue3-essential", 30 | "eslint:recommended" 31 | ], 32 | "parserOptions": { 33 | "parser": "babel-eslint" 34 | }, 35 | "rules": {} 36 | }, 37 | "prettier": { 38 | "semi": false, 39 | "singleQuote": true 40 | }, 41 | "browserslist": [ 42 | "> 1%", 43 | "last 2 versions", 44 | "not dead" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /vue-fundamentals/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-fundamentals", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "core-js": "^3.6.5", 12 | "vue": "^3.0.0" 13 | }, 14 | "devDependencies": { 15 | "@vue/cli-plugin-babel": "~4.5.0", 16 | "@vue/cli-plugin-eslint": "~4.5.0", 17 | "@vue/cli-service": "~4.5.0", 18 | "@vue/compiler-sfc": "^3.0.0", 19 | "babel-eslint": "^10.1.0", 20 | "eslint": "^6.7.2", 21 | "eslint-plugin-vue": "^7.0.0-0" 22 | }, 23 | "eslintConfig": { 24 | "root": true, 25 | "env": { 26 | "node": true 27 | }, 28 | "extends": [ 29 | "plugin:vue/vue3-essential", 30 | "eslint:recommended" 31 | ], 32 | "parserOptions": { 33 | "parser": "babel-eslint" 34 | }, 35 | "rules": {} 36 | }, 37 | "prettier": { 38 | "semi": false, 39 | "singleQuote": true 40 | }, 41 | "browserslist": [ 42 | "> 1%", 43 | "last 2 versions", 44 | "not dead" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /vue-http/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-http", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "axios": "^0.21.1", 12 | "core-js": "^3.6.5", 13 | "vue": "^3.0.0" 14 | }, 15 | "devDependencies": { 16 | "@vue/cli-plugin-babel": "~4.5.0", 17 | "@vue/cli-plugin-eslint": "~4.5.0", 18 | "@vue/cli-service": "~4.5.0", 19 | "@vue/compiler-sfc": "^3.0.0", 20 | "babel-eslint": "^10.1.0", 21 | "eslint": "^6.7.2", 22 | "eslint-plugin-vue": "^7.0.0-0" 23 | }, 24 | "eslintConfig": { 25 | "root": true, 26 | "env": { 27 | "node": true 28 | }, 29 | "extends": [ 30 | "plugin:vue/vue3-essential", 31 | "eslint:recommended" 32 | ], 33 | "parserOptions": { 34 | "parser": "babel-eslint" 35 | }, 36 | "rules": {} 37 | }, 38 | "prettier": { 39 | "semi": false, 40 | "singleQuote": true 41 | }, 42 | "browserslist": [ 43 | "> 1%", 44 | "last 2 versions", 45 | "not dead" 46 | ] 47 | } 48 | -------------------------------------------------------------------------------- /vue-composition/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-composition", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "serve": "vue-cli-service serve", 7 | "build": "vue-cli-service build", 8 | "lint": "vue-cli-service lint" 9 | }, 10 | "dependencies": { 11 | "core-js": "^3.6.5", 12 | "lodash": "^4.17.20", 13 | "vue": "^3.0.0" 14 | }, 15 | "devDependencies": { 16 | "@vue/cli-plugin-babel": "~4.5.0", 17 | "@vue/cli-plugin-eslint": "~4.5.0", 18 | "@vue/cli-service": "~4.5.0", 19 | "@vue/compiler-sfc": "^3.0.0", 20 | "babel-eslint": "^10.1.0", 21 | "eslint": "^6.7.2", 22 | "eslint-plugin-vue": "^7.0.0-0" 23 | }, 24 | "eslintConfig": { 25 | "root": true, 26 | "env": { 27 | "node": true 28 | }, 29 | "extends": [ 30 | "plugin:vue/vue3-essential", 31 | "eslint:recommended" 32 | ], 33 | "parserOptions": { 34 | "parser": "babel-eslint" 35 | }, 36 | "rules": {} 37 | }, 38 | "prettier": { 39 | "semi": false, 40 | "singleQuote": true 41 | }, 42 | "browserslist": [ 43 | "> 1%", 44 | "last 2 versions", 45 | "not dead" 46 | ] 47 | } 48 | -------------------------------------------------------------------------------- /vue-composition/src/components/Methods.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 53 | 54 | -------------------------------------------------------------------------------- /vue-composition/src/components/ProvideInject.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 48 | 49 | -------------------------------------------------------------------------------- /vue-http/src/components/CreatePost.vue: -------------------------------------------------------------------------------- 1 | 20 | 21 | 48 | 49 | -------------------------------------------------------------------------------- /vue-composition/src/components/Data.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 51 | 52 | -------------------------------------------------------------------------------- /vue-composition/src/App.vue: -------------------------------------------------------------------------------- 1 | 17 | 18 | 54 | 55 | 65 | -------------------------------------------------------------------------------- /vue-composition/src/components/Computed.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 62 | 63 | -------------------------------------------------------------------------------- /vue-composition/src/components/Watch.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 100 | 101 | -------------------------------------------------------------------------------- /vue-components/src/App.vue: -------------------------------------------------------------------------------- 1 | 66 | 67 | 120 | 121 | 135 | -------------------------------------------------------------------------------- /vue-fundamentals/src/App.vue: -------------------------------------------------------------------------------- 1 |