vueX10分钟入门

栏目: JavaScript · 发布时间: 6年前

内容简介:通过本文你将:1.知道什么是vueX.2.知道为什么要用VueX.

通过本文你将:

1.知道什么是vueX.

2.知道为什么要用VueX.

3.能跑一个VueX的例子。

4.了解相关概念,面试的时候能说出一个所以然

5.项目中用Vuex知道该学什么东西。

好,走起。

1.什么是vueX?

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

翻译成人话,Vuex是vuejs的官方管理数据状态的库。

官网: https://vuex.vuejs.org/zh/

2.为什么用它?

举个例子,

你用vue开发一个app,

vueX10分钟入门

不同的组件,你都需要用户信息,还有一些公用的数据,你每一个组件请求一遍浪费性能,你不请求组件间属性和参数传来传去,你自己维护很墨迹,麻烦也容易出错。好吧,你觉得干不好或者麻烦,那么vueX帮你解决这个事儿。

这个没什么复杂的,大学图书馆,自助借还书,每次都把书乱放,维护很麻烦,怎么办,都还给图书馆管理员,图书馆管理员统一管理调配。ok,图书管理员就是VueX.

3.怎么用?

1.安装

npm install vuex --save

2.初始化store.js,

(vue-cli安装项目目录不墨迹),

一般放到src/store/store.js下面,初始化代码,相当于搞了一个图书管理员。

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export const store = new Vuex.Store({})

3.写需要的组件

创建一个Form.vue组件,怼下面的内容,

<template>
    <div>
        <label for="dabinge666">你喜欢彬哥哪一点</label>
        <input name="dabinge666">
    </div>
</template>

创建一个展示组件Display.vue

<template>
    <div>
        <p>我喜欢彬哥:</p>
    </div>
</template>

打开App.vue,删掉没用的东西,直接怼下面的代码,

<template>
  <div id="app">
    <Form/>
    <Display/>
  </div>
</template>

<script>
import Form from './components/Form'
import Display from './components/Display'

export default {
  name: 'App',
  components: {
    Form,
    Display
  }
}
</script>

到这里,架子就搭好了。

4.增加各种需要的东西,

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export const store = new Vuex.Store({
  state: {
    love: ''
  },
  mutations: {
    change(state, love) {
      state.love = love
    }
  },
  getters: {
    love: state => state.love
  }
})

这里注意,你不用去管

vueX10分钟入门

这些破概念,你就照猫画虎,我写啥你抄啥,抄几遍,你就知道数据流向了。你不知道鼠标叫mouse,也不影响你玩电脑。

love就是你喜欢我的东西,相当于一个变量,被传来传去的一会。

好了,就这么简单可以用了。

4.使用VueX

打开main.js,导入,然后用。

import { store } from './store/store'

new Vue({
  el: '#app',
  store,
  components: { App },
  template: '<App/>'
})

到这里就相当于图书管理员上岗等着学生来还书了,来啊,互相伤害啊!

5.我来了……

既然搞数据,躲不开刚才我们的搞的表单组件,打开Form.vue

<template>
  <div>
    <label for="dabinge666">你喜欢彬哥哪一点?</label>
      //输入:离我远一点
    <input @input="changed" name="dabinge666">
  </div>
</template>

<script>
export default {
  methods: {
    changed: function(event) {
        //大声喊出你的对彬哥的爱,让整个图书馆都听到
      this.$store.commit('change', event.target.value)
    }
  }
}
</script>

打开,Display.vue

<template>
  <div>
    <p>我喜欢彬哥: {{ $store.getters.love }}</p>
  </div>
</template>

漂亮,如果你运行成功,你就会发现,页面里面出现,我喜欢彬哥:离我远一点。

告辞!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

文明之光(第一册)

文明之光(第一册)

吴军 / 人民邮电出版社 / 2014-6-25 / 59.00元

人类的历史,是从野蛮蒙昧一步步走向文明进步的过程。在文明的进程中,人类创造出多元的文化,它们有着各自的特长。要实现人类和平发展的终极理想,一个重要的前提是承认文化的多元性,并且取长补短,相互融合。 吴军博士写作《文明之光》系列,希望能开阔人们的视野,让我们看到各种各样的人类文明。虽然今天不同的地区发达程度不同,文明历史的长短不一,国家亦有大小之分,但是文明之光从世界的每一个角落发出,对人类的......一起来看看 《文明之光(第一册)》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具