首先:

安装vuex

npm install vuex -S

需要有两个组件(HelloWord.vue 和 HelloDemo.vue)[组件自定义]

注册路由

注册store

测试


一、需要有两个路由

HelloWorld.vue如下


  1. <template>
  2. <div class="hello">
  3. <h2>{{this.$store.state.count}}</h2>
  4. <button @click="inc">增加</button>
  5. <router-link to="/demo">go demo</router-link>
  6. </div>
  7. </template>
  8. <script>
  9. export default {
  10. name: 'HelloWorld',
  11. methods:{
  12. inc:function(){
  13. this.$store.commit('inc')
  14. }
  15. }
  16. }
  17. </script>

HelloDemo.vue如下


  1. <template>
  2. <div>
  3. <h2>{{this.$store.state.count}}</h2>
  4. <router-link to="/">home</router-link>
  5. <button @click="deinc">减少</button>
  6. </div>
  7. </template>
  8. <script>
  9. export default {
  10. name:'HelloDemo',
  11. methods:{
  12. deinc:function(){
  13. this.$store.commit('deinc')
  14. }
  15. }
  16. }
  17. </script>

二、注册路由

打开router-->index.js


  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. //分别引入两个组件
  4. import HelloWorld from '@/components/HelloWorld'
  5. import HelloDemo from '@/components/HelloDemo'
  6. Vue.use(Router)
  7. export default new Router({
  8. //配置路由参数
  9. routes: [
  10. {
  11. path: '/',
  12. name: 'HelloWorld',
  13. component: HelloWorld
  14. },
  15. {
  16. path: '/demo',
  17. name: 'HelloDemo',
  18. component: HelloDemo
  19. }
  20. ]
  21. })

三、注册Store

打开main.js


  1. import Vue from 'vue'
  2. import App from './App'
  3. import router from './router'
  4. import Vuex from 'vuex' //引入Vuex
  5. Vue.use(Vuex)//使用Vuex
  6. //定义store
  7. const store = new Vuex.Store({
  8. //定义数据
  9. state:{
  10. count:0
  11. },
  12. //定义方法
  13. mutations:{
  14. inc(){
  15. this.state.count++
  16. },
  17. deinc(){
  18. this.state.count--
  19. }
  20. }
  21. })
  22. Vue.config.productionTip = false
  23. new Vue({
  24. el: '#app',
  25. router,
  26. store,//将store注册在vue实例中
  27. components: { App },
  28. template: '<App/>'
  29. })

四、测试

Vue+Vuex初体验的更多相关文章

  1. vuex 初体验

    vuex是vue的状态管理工具,vue进阶从es6和npm开始,es6推荐阮一峰大神的教程. vuex学习从官方文档和一个记忆小游戏开始.本着兴趣为先的原则,我先去试玩了一把-->. Vuex ...

  2. vue+vuex初入门

    Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 解决问题: 传参的方法对于多层嵌 ...

  3. vue.js 初体验— Chrome 插件开发实录

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者:陈纬杰 背景 对于经常和动画开发打交道的开发者对于Animate.css这个动画库不会陌生,它把一些常见 ...

  4. Nuxt+Vuex初体验

    小呀嘛小二郎,背着书包上学堂... 今天一个困扰了我一周时间的问题终于被我解决了,值得庆祝 在Nuxt中使用Vuex实现数据存储 首先: 在store目录下新建一个index.js文件 需要有两个组件 ...

  5. vue.js——初体验

    看到最近很火的vue.js,于是开启了自己人生中首篇翻译之路,才意识到这个纯英文版的的确没有中文的通俗易懂~~~~~~不过, 还是硬着头皮把这篇英文版的博客给翻译完了,希望可以帮助自己的同时也方便别人 ...

  6. MVC + Vue.js 初体验(实现表单操作)

    Vuejs http://cn.vuejs.org/ Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的 ...

  7. Laravel 5.4+Vue.js 初体验:Laravel下配置运行Vue.js

    生产材料PHP:PHP 5.6+Laravel 5.4:https://github.com/laravel/laravel/releases/Composer:http://getcomposer. ...

  8. vue.jsc初体验

    Vue 1.安装脚手架 (1)npm install -g vue-cli (2)Vue -v //查看是否安装成功 (3)Vue init webpack name(名称) (4)Npm insta ...

  9. 【腾讯Bugly干货分享】基于 Webpack & Vue & Vue-Router 的 SPA 初体验

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d13a57132ff21c38110186 导语 最近这几年的前端圈子,由于 ...

随机推荐

  1. 怎么定义一个自己的vue组件

    1.在src文件夹中创建一个hello文件夹,然后创建hello.js和hello.vue 2.hello.vue代码如下 <template> <button>这是hello ...

  2. 【Git】405- 分享:大牛总结的 Git 使用技巧

    作者:你喜欢吃青椒么 来源:juejin.im/post/5d157bf3f265da1bcc1954e6 前言 本文是参考廖雪峰老师的Git资料再加上我自己对Git的理解,记录我的Git学习历程,作 ...

  3. 【H5】316- 移动端H5跳坑指南

    最近在一个移动端的 Web 项目中踩了很多的坑,感觉有必要把它们记录下来,分享给即将踏入移动端 Web 开发大门的朋友们,更好的解决ios和android兼容. 1.input获取焦点时,页面被放大 ...

  4. 【Web技术】276- WebView缓存原理分析和应用

    前言 混合式开发,在产品体验以及页面加载速度的体验上已经非比以往的.今日早读文章由@unclechen分享. 正文从这开始- 一.背景 现在的App开发,或多或少都会用到Hybrid模式,到了WebV ...

  5. unittest自动化测试框架

    目录 框架的概念 Unittest单元测试框架 常用的assert语句 unittest创建测试代码的方式: unittest构建测试套件(测试用例集合): unittest忽略测试用例: 运行测试集 ...

  6. 浅析Java堆,栈,方法区

    栈(Stack) 1.栈是线程私有的,其生命周期和线程相同. 2.每个方法在执行的时候都会开辟一个栈区,同时创建一个栈帧(Stack Frame). 3.栈帧用于存储局部变量表,操作数栈,动态链接和方 ...

  7. 【Maven】plugin使用学习

    Maven plugin使用学习 官网可用的插件:http://maven.apache.org/plugins/index.html 目录 ============================= ...

  8. Mybatis需要注意的细节

    mybatis第二篇 1.${}和#{}的区别 1.#在传参的时候,会自动拼接单引号:$不能拼接单引号; 2.$传参时,一般不支持jdbcType指定类型的写法;#则可以;如: ​ #{name,jd ...

  9. java基础集合简介List/Vector(三)上

    集合特点: 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:集合是可变长度的. 集合和数组的区别: 1:数组是固定长度的:集合可变长度的. 2:数组可以存储基本数据类型,也可以存储引用数 ...

  10. pt-online-schema-change工具使用教程(在线修改大表结构)

    percona-toolkit中pt-online-schema-change工具安装和使用 pt-online-schema-change介绍 使用场景:在线修改大表结构 在线数据库的维护中,总会涉 ...