axios

VueJs(7)---计算属性和侦听器

一曲冷凌霜 提交于 2020-04-29 15:04:14
计算属性和侦听器 一、 概述 计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的。在模板中放入太多的逻辑会让模板过重且难以维护。例如: < div id ="example" > {{ message.split('').reverse().join('') }} </ div > 在这个地方,模板不再是简单的声明式逻辑。你必须看一段时间才能意识到,这里是想要 显示变量 message 的翻转字符串 。当你想要在模板中多次引用此处的翻转字符串时,就会更加难以处理。 所以,对于任何复杂逻辑,你都应当使用计算属性。 基础例子 < div id ="example" > < p > Original message: "{{ message }}" </ p > < p > Computed reversed message: "{{ reversedMessage }}" </ p > </ div > var vm = new Vue({ el: '#example' , data: { message: 'Hello' }, computed: { // 计算属性的 getter reversedMessage: function () { // `this` 指向 vm 实例 return this .message.split('').reverse()

[Abp vNext微服务实践]

橙三吉。 提交于 2020-04-29 09:29:55
简介 之前的技术路线本来是angular的,后来经过一段时间的开发还是打算选择vue,原因是vue简单丰富,尽管angular规范强大,但是组件库都不太符合国人风格。看到GitHub上Vue Element Admin这么高的人气后就毫不犹豫的选择了这个后台管理框架。作为一个后端开发,刚刚下载Vue Element Admin框架时确实无从下手,但是一番研究之后也就适应了,今天就介绍下改造Vue Element Admin登录并对接vNext授权服务。vNext授权服务使用的是ids4框架,所以使用ids4框架授权的服务都可以参考该登录。 代码分析 根据Vue Element Admin作者的介绍,该框架登录需要两步,获取token和获取userinfo(用户信息)。Vue Element Admin作者公司的后端设计应该是用户信息中包括用户权限,所以Vue Element Admin(后称Admin)登录只需调两次接口。 在view路径的login中可以看到login的click事件: handleLogin() { this .$refs.loginForm.validate(valid => { if (valid) { this .loading = true this .$store.dispatch("user/userLogin", this .loginForm)

Put request with simple string as request body

耗尽温柔 提交于 2020-04-29 06:32:22
问题 When I execute the following code from my browser the server gives me 400 and complains that the request body is missing. Anybody got a clue about how I can pass a simple string and have it send as the request body? let content = 'Hello world' axios.put(url, content).then(response => { resolve(response.data.content) }, response => { this.handleEditError(response) }) If I wrap content in [] it comes thru. But then the server receives it as a string beginning with [ and ending with ]. Which

Vue全家桶+ElementUI+Mock.Js实现的后台管理系统:学习笔记

独自空忆成欢 提交于 2020-04-29 03:18:24
-----写在前面----- 虽然自己写了个仿站,但小林心里十分有数,这个玩意到时候可能都不好意思写到简历上,果然前端越往后面学越觉得自己之前是弟弟。 现在在看6月份的简历,突然明白为啥公司们都不要我...就干两个月,技术还没多好,打扰了(;′⌒`) 把ElementUI的官网文档过了一遍,感叹作者也太🐮了...大神们造的轮子属实给劲 正好看到了一个用标题所列的技术栈搭建的一个后台管理系统,clone下来看了一下发现属实有点脑壳疼,不过问题不大,一天看懂一些,总归是能吃的透透的嗷 Vue-Admin-Demo -----2019.08.24(Day 1):目录梳理、路由配置详解、login.vue----- 和直接使用vue-cli以webpack模板生成的工程文件不同 作者把路由组件放在views文件夹下 api文件夹用于接收mock文件夹模拟出的数据并作为axios的请求地址(这个后面会详解) 路由配置文件: // 省略路由的引入 let routes = [ { path: '/login' , component: Login, name: '' , hidden: true }, { path: '/404' , component: NotFound, name: '' , hidden: true }, // { path: '/main', component:

vue2.0+Element-ui实战案例

荒凉一梦 提交于 2020-04-29 02:59:28
前言 我们将会选择使用一些 vue 周边的库vue-cli, vue-router,axios,moment,Element-ui搭建一个前端项目案例,后端数据接口,会使用json-server快速搭建一个本地的服务,方便对数据的增删改查, 利用以上技术我们会搭建一个vue案例,效果展示图: 以上就是我们最终要实现的全部效果,我会一块一块的讲解,关于脚手架安装和json-server搭建,在本次博客中,不会讲解,如果想看的话,在小编的博客中,也有讲解关于脚手架搭建和json-server搭建,如果想学习的话,可以看一下。 1.项目结构展示 左边第一个是前端项目结构,第二个为json-server服务端 2.页面搭建 在本次案例中,小编采用Element-ui快速搭建前端页面,以提高效率。如果不了解的话,可以去官网看一下   2.1安装element-ui  通过npm install element-ui -S 安装前端ul框架,安装完之后,并在main.js引入 import ElementUI from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(ElementUI)   2.2页面布局UserInfo.vue   直接通过element-ui中table布局,把整体建构页面布局完成,

使用Laravel 和 Vue 构建一个简单的SPA

纵然是瞬间 提交于 2020-04-28 22:13:55
本教程是作者自己在学习Laravel和Vue时的一些总结,有问题欢迎指正。 Laravel是PHP的一个框架,Vue是前端页面的框架,这两个框架如何结合起来构建一个SPA(Single Page Application)呢?流程大致分为下面三步: 页面请求Laravel的一个路由 路由返回渲染一个包含了Vue的SPA框架 在上面渲染出来的框架中使用Vue来加载不同的页面单元模块 主要会学习使用到三个东西: laravel vue.js Vue-router axios 上面是一个简单的流程图,从图中我们可以看到,当请求 3 和 4 的路由时,并不会再次请求后端的Laravel,而是前端渲染了。 说了这么多,我们开始写代码吧~ 1. 安装 composer create-project --prefer-dist laravel/laravel laravel-spa "5.6.*" cd laravel-spa npm install npm install vue-router 安装好 laravel 和 vue-router 后,我们需要配置前端路由和路由对应的组件 2. 配置Vue Router 在 Vue Router 中把 route 和vue组件做了一个映射,在渲染时会把不同的组件渲染到 <router-view></router-view> 标签中。 首先,我们修改

vue-Element-axios搭建调用api进行数据展示

北城以北 提交于 2020-04-28 13:57:44
1全局安装vue-cli 输入命令:npm install vue-cli -g 2创建项目框架 输入命令:vue init webpack vueapi 3依次按照提示输入,项目名、项目描述、项目作者等等, 4.进入vueapi目录 输入命令: cd vueapi 5.安装element-ui 输入命令:npm i element-ui -S 因为是基于Vue.js和elementUI进行的项目开发,所以当然要导入Vue.j包和elementUI包: npm install --save vue element-ui 6.安装vue-router 要进行页面跳转,所以要用到vue-router: 输入命令:npm install --save vue-router 7.安装axios 要从后端获取数据,所以要ajax请求,用vue官方推荐的axios: 输入命令:npm install --save axios 启动项目 输入:npm run dev 构建vue项目目录大致如下: buid:构建脚本目录 config:构建配置目录 node_modules:依赖node工具包目录 src:源码目录 assets:资源目录 components:组件目录 router: App.vue 页面vue组件 main.js:页面入口js文件 static :静态文件目录 test

用Spring Security, JWT, Vue实现一个前后端分离无状态认证Demo

為{幸葍}努か 提交于 2020-04-28 09:46:08
简介 完整代码 https://github.com/PuZhiweizuishuai/SpringSecurity-JWT-Vue-Deom 运行展示 后端 主要展示 Spring Security 与 JWT 结合使用构建后端 API 接口。 主要功能包括登陆(如何在 Spring Security 中添加验证码登陆),查找,创建,删除并对用户权限进行区分等等。 ps:由于只是 Demo,所以没有调用数据库,以上所说增删改查均在 HashMap 中完成。 前端 展示如何使用 Vue 构建前端后与后端的配合,包括跨域的设置,前端登陆拦截 并实现 POST,GET,DELETE 请求。包括如何在 Vue 中使用后端的 XSRF-TOKEN 防范 CSRF 攻击 技术栈 组件 技术 前端 Vue.js 2 后端 (REST API) SpringBoot (Java) 安全 Token Based (Spring Security, JJWT , CSRF) 前端脚手架 vue-cli3 , Webpack, NPM 后端构建 Maven 实现细节 后端搭建 基础配置 创建 Spring boot 项目,添加 JJWT 和 Spring Security 的项目依赖,这个非常简单,有很多的教程都有块内容,唯一需要注意的是,如果你使用的 Java 版本是 11,那么你还需要添加以下依赖

uni-app学习(三)好用的插件1

时间秒杀一切 提交于 2020-04-28 08:08:32
1. uni-app学习(三) 1.1. async/await使用 表示异步处理,可使用then函数继续操作,返回的是Promise async function timeout() { return 'hello world' } timeout().then(result => { console.log(result); }) console.log('虽然在后面,但是我先执行'); 先打印下面这句 await是等待的意思,它后面可以放任何表达式,不过我们更多的是放一个返回promise 对象的表达式 // 2s 之后返回双倍的值 function doubleAfter2seconds(num) { return new Promise((resolve, reject) => { setTimeout(() => { resolve(2 * num) }, 2000); } ) } async function testResult() { let result = await doubleAfter2seconds(30); console.log(result); } testResult(); 遇到await 之后,代码就暂停执行了, 等待doubleAfter2seconds(30) 执行完毕 参考 这篇博客 1.2. request网络请求封装

后台管理系统之“图片上传” --vue

家住魔仙堡 提交于 2020-04-28 07:06:44
图片上传(基于vue)   相信上传图片是所有系统必备的功能吧,工作中的第一个管理系统就在上传图片的功能上卡顿了一整天。   当时用的elementUI组件,但是由于样式和设计图样式差别较大再加上原生相较好理解,便使用了原生实现图片上传功能。   菜鸟上路,望多多指点。 图片上传原理(csdn里看到的比较通俗易懂的图片上传原理)      参考地址: https://blog.csdn.net/q857277886/article/details/79092591   前端网页文件上传一般使用 <input type="file" />来实现。 在 HTML 文档中 <input type="file" />标签每出现一次,一个 FileUpload 对象就会被创建。    2.该标签包含一个文本输入字段,用来输入文件名,还有一个按钮,用来打开文件选择对话框以便图形化选择文件,该标签的 value属性保存了用户指定的文件的名称。 3.多选:标签可以通过添加 multiple 属性来支持多选;如果选择了多个文件, 这个值表示第一个被选择的文件路径. JavaScript 可以通过 Input 的 FileList 属性获取到其他的文件路径. 4.文件信息:可以通过 input.files 属性返回 — 返回值是一个 FileList 对象,这个对象是一个包含了许多 File