首页
友链
导航
影视
壁纸
统计
留言板
Search
1
el-upload自定义触发按钮及触发上传前判断
843 阅读
2
vue配置二级目录以及nginx多网站部署
701 阅读
3
el-cascader选择任意一级搭配懒加载使用,单选框radio不会触发懒加载
578 阅读
4
joe主题自定义导航页面
516 阅读
5
js获取昨天今天明天日期
480 阅读
web前端
vue
react
javascript
nuxt
typescript
indexDB数据库
微信小程序
美文欣赏
心情随笔
技术分享
其他
PHP
nodejs
博客api实战项目
typecho
登录
Search
标签搜索
web
vue
node项目实战
js
javascript
typecho
css
vuex
router
nginx
git
element
joe
utils
leaflet
dateFormat
map
date
axios
reg
辰漪
累计撰写
66
篇文章
累计收到
122
条评论
首页
栏目
web前端
vue
react
javascript
nuxt
typescript
indexDB数据库
微信小程序
美文欣赏
心情随笔
技术分享
其他
PHP
nodejs
博客api实战项目
typecho
页面
友链
导航
影视
壁纸
统计
留言板
搜索到
13
篇与
vue
的结果
2021-12-17
vue路由传参的几种方式
路由跳转的两种方式1. 声明式导航使用router-link的to属性进行路由跳转 to的值是要跳转到的那个路由// 1.1 to后直接跟路由 <router-link to="/home">to home</router-link> // 1.2 to后跟一个配置对象path属性是要跳转到的那个路由 <router-link :to="{ path: '/home' }">to home</router-link> // 1.3 to后跟一个配置对象,使用命名路由的name进行跳转 <router-link :to="{ name: 'homeIndex' }">to home</router-link>查询字符串形式 路由传参 to的值是一个配置对象 以查询字符串形式携带 url?id=123// 2.1 以 url?id=123&name=zs的形式携带 <router-link :to="{ path: '/home?id=123' }">to home?id=123</router-link> // 2.2 以query属性进行传参 <router-link :to="{ path: '/home', query: { id: 123 } }">to home 以query携带</router-link> // 2.3 以params进行传参 需要命名路由name <router-link :to="{ name: 'userIndex', params: { id: 123 } }">to user 以params携带</router-link>2. 编程式导航使用this.$router进行跳转 $router可以访问到路由的实例this.$router.push('/home') this.$router.push('/home?id=123') // 携带query参数 this.$router.push({ path: '/home', query: { id: 123 } }) // 携带query参数 this.$router.push({ name: 'homeIndex', params: { id: 123 } }) // 携带params参数 需要和命名路由搭配使用$router实例的跳转方法push() // 跳转到指定的路由,向history历史中添加记录,点击返回,返回到来之前的路由。 go(n) // 向前前进 n 或 后退 n个路由 n可为负数 replace() // 跳转到指定的路由,但是不会在history中添加记录,点击返回,会跳转到上上一个路由。 back() // 后退 forward() // 前进
2021年12月17日
143 阅读
0 评论
2 点赞
2021-11-29
如何封装axios,并模块化
1. 安装axiosnpm install axios -s2. 导入axios// utils/request.js import axios from 'axios' export const baseURL = process.env.NODE_ENV === 'production' ? 'http://wrz521.top:8080/api/' : 'http://127.0.0.1:8080/api/' // 实例化axios const request = axios.create({ baseURL, // 基准路径 timeout: 10000 }) // 添加请求拦截器 request.interceptors.request.use(function (config) { // 在发送请求之前做些什么 if (config.url !== '/my/login') { config.headers.Authorization = getToken() } return config }, function (error) { // 对请求错误做些什么 return Promise.reject(error) }) // 添加响应拦截器 request.interceptors.response.use(function (response) { // 对响应数据做点什么 const { data } = response if (data.status === 401) { removeToken() router.push('/login') } return data }, function (error) { // 对响应错误做点什么 return Promise.reject(error) }) export default request3. 使用request封装api函数// api/user.js import request from '@/utils/request.js' export const login = function (username, password) { return request({ url: '/api/login', method: 'get', params: { username, password } }) }4. 在页面中调用api函数发送请求import { login } from '@/api/user.js' export default { data () { return { username: 'admin', password: '123456789' } }, mounted () { this.onLogin() }, methods: { async onLogin () { const res = await login(this.username, this.password) console.log(res, 'login result') } } }
2021年11月29日
306 阅读
3 评论
6 点赞
2021-11-09
Vuex使用教程
一、Vuex简述Vuex其实就是一个状态管理工具,所谓的状态,就是数据,通过这个工具进行管理某些数据。当多个组件都需要同一个数据时,可以将这个数据交给Vuex进行统一的管理,组件可以直接引用这个数据,避免了组件间繁琐的层层传递的情况。二、Vuex核心Vuex有五大核心,state,getter,mutation,action,module。state用来存放要被管理的数据,getter相当于computed计算属性,mutation中用来定义要修改state中数据的方法,action中用来定义异步的一些方法,module可以将多个store分成一个一个的模块。三、Vuex使用 1. 在vue项目中使用Vuex时,需要先安装Vuex插件,并且注册,一般情况下都会在,在src下新创建一个store文件夹,下边有一个index.vue,在这个文件中创建store容器实例.。// 1. 安装插件 npm install vuex --save // 2. 注册插件 import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) 2. 创建vuex实例,在vuex上提供了一个Store()方法,用来创建实例,将其命名为store,意为仓库的意思。在Vuex.Store()中传一个配置对象,配置对象中包括上述的五大核心,如果用不到,也可以不做配置。const store = new Vuex.Store({ state: {num: 2}, // 存放数据 getters: {}, // 计算属性 mutations: {}, // 修改state中数据的一些方法 actions: {}, // 异步方法 modules: {} // store模块 }) export default store 3. 在入口文件main.js中引入store。// main.js import Vue from 'vue' import App from './App' import store from './store/index.vue' // 简写 import store from './store' Vue.config.productionTip = false new Vue({ el: '#app', store: store, // es6 简写 直接写 store 属性名和变量名相同 render: h => h(App) }) 4. 在页面中如何使用store中的数据?在使用vuex中的数据之前,先使用import导入写好的store。组件中在插值表达式中使用$store.state.num获取store中num的数据。<template> <div> <h2>{{ $store.state.num }}</h2> </div> </template>四、mapState,mapMutations,mapGetters,mapActions映射1. // 先从vuex中结解构出四个方法 import {mapState, mapMutations, mapGetters, mapActions} from 'vuex' 2. // 在computed计算属性中映射state数据和getters计算属性 computed: { ...mapState('模块名', ['name', 'age']) ...mapGetters('模块名', ['getName']) } 3. // 在methods方法中映射mutations和actions方法 methods: { ...mapMutations('模块名', ['方法名1','方法名2']) ...mapActions('模块名', ['方法名1','方法名2']) } 4. 这些数据和方法都可以通过this来调用和获取以上就是vuex大致的使用方法全文转自: 辰漪博客
2021年11月09日
343 阅读
0 评论
1 点赞
1
2