首页 / VUE / vuex实现简易计数器
vuex实现简易计数器
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了vuex实现简易计数器,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2629字,纯文字阅读大概需要4分钟。
内容图文
![vuex实现简易计数器](/upload/InfoBanner/zyjiaocheng/349/fa8fd53bf329422c91a51d8a0ebb7b3c.jpg)
本文实例为大家分享了vue.js计数器的制作方法,供大家参考,具体内容如下
src/components
Hello.vue
<template> <div class="hello"> <h1>Now count is {{counterValue}}</h1> <br> </div> </template> <script> import { getCount } from '../vuex/getters' export default { vuex: { getters: { counterValue: getCount } }, data () { return { } } } </script> <style scoped> h1 { color: #42b983; } </style>
Increate.vue
<template> <div> <button @click='increment' class="btn btn-success">click me + 3</button> <button @click='reduce' class="btn btn-warning">click me - 1</button> </div> </template> <script> import { incrementCounter, reduceCounter } from '../vuex/action' export default { vuex: { actions: { increment: incrementCounter, reduce: reduceCounter } }, data: function () { return { } }, computed: {}, ready: function () {}, attached: function () {}, methods: {}, components: {} } </script> <style lang="css"> </style>
src/vuex
store.js
import Vue from 'vue' import Vuex from 'Vuex' Vue.use(Vuex) const state = { count: 0 } const mutations = { INCREMENT (state, n) { state.count = state.count + n }, REDUCE (state) { state.count-- } } export default new Vuex.Store({ state, mutations })
action.js
export const incrementCounter = ({dispatch}) => dispatch('INCREMENT', 3) export const reduceCounter = ({dispatch}) => dispatch('REDUCE')
getters.js
export function getCount (state) { return state.count }
src/App.vue
<template> <div id="app"> <img class="logo" src="./assets/logo.png"> <hello></hello> <increate></increate> </div> </template> <script> import Hello from './components/Hello' import Increate from './components/Increate' import store from './vuex/store' export default { store, components: { Hello, Increate } } </script> <style> html { height: 100%; } body { display: flex; align-items: center; justify-content: center; height: 100%; } #app { color: #2c3e50; margin-top: -100px; max-width: 600px; font-family: Source Sans Pro, Helvetica, sans-serif; text-align: center; } #app a { color: #42b983; text-decoration: none; } .logo { width: 100px; height: 100px } </style>
src/main.js
// 入口文件 import Vue from 'vue' import App from './App' import VueRouter from 'vue-router' import VueResource from 'vue-resource' /* eslint-disable import VueRouter from 'vue-router'no-new */ new Vue({ el: 'body', components: { App } }) Vue.use(VueRouter) Vue.use(VueResource) var router = new VueRouter({ hashbang: false, // 设置为true时,所有的路径都会被格式化为#!开头 history: true // 默认false,利用history.pushState(), history.replaceState()来管理浏览历史记录 }) // require('./routers')(router) router.start(App, '#app')
效果图:
本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
内容总结
以上是互联网集市为您收集整理的vuex实现简易计数器全部内容,希望文章能够帮你解决vuex实现简易计数器所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。