1.前端服务器搭建

(1)创建一个static web project

(2) 安装 npm install -g vue-cli

(3) vue init webpack 项目名

(4)cd 项目名

​    npm run dev  运行服务

完成上面步骤后,就将vue.js项目放入到前端服务器中运行了。如果安装速度慢可以使用淘宝镜像代理:npm config set registry https://registry.npm.taobao.org

2.element安装

Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库 ,是一种很好的前端开发,可以很好的用来实现前后端分离

(1)安装
​    npm i element-ui -S
(2)引入elementui 在 main.js

  import ElementUI from 'element-ui'; //引入核心js组件
  import 'element-ui/lib/theme-chalk/index.css';//引入依赖的样式
  Vue.use(ElementUI) //引用

3.配置main.js(所有配置写在一起的,看的时候注意区分)

import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'; //引入核心js组件
import 'element-ui/lib/theme-chalk/index.css';//引入依赖的样式
import axios from 'axios'//引入axios请求
import UserMock from './userMock.js'//引入假数据源
//配置axios的全局基本路径
axios.defaults.baseURL=''
//全局属性配置,在任意组件内可以使用this.$http获取axios对象
Vue.prototype.$http = axios
Vue.use(ElementUI) //引用elementui
//上面这行代码的意思 是阻止显示生产模式的消息
Vue.config.productionTip = false//默认配置false /* eslint-disable no-new */
new Vue({//挂载index中所有的路由和组件
el: '#app',
router,
components: { App },
template: '<App/>'
})

1.element组件使用 效果: 客户端(浏览器)输入地址-----> 根据路由进入相应的组件中---------->vue界面渲染,展示

步骤1:新建一个vue文件

<template>
<div id="app">
<el-button @click="visible = true">Button</el-button>
<el-dialog :visible.sync="visible" title="您好">
<p>欢迎您</p>
</el-dialog>
</div>
</template> <script>
export default {
name: 'elementUi01',
data () {
return {
msg: '欢迎来到vue',
visible:false
}
}
}
</script>

步骤2:在index.js中配置路由(浏览器访问的路径,以及组件的引入)

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'//引入界面模板
import Elementui from '@/components/_01elementui' Vue.use(Router) export default new Router({//将路由导出到需要挂载的文件中,main.js
routes: [
{
path: '/',//访问路径
name: 'HelloWorld',
component: HelloWorld//组件名与上面导入的名称一致
},
{
path: '/_01elementui',
name: '_01elementui',
component: Elementui
},

上面只是一个简单的引入,其他还有很多组件和样式的使用,如el-button 按钮、el-tree 树形、el-table表格、el-form表单、el-pagination分页、el-container容器、el-layout布局

el-tabs页签 选项卡、el-dialog对话框、el-alert 提示框等,使用的方式一样,只是界面展示内容不同,就不再重复了。

4.mockjs:前端工程师 用来模拟的数据

安装mockjs

(1) npm install mockjs

(2)userMock.js(假数据生成的文件)文件引用 mockjs

let Mock=require('mockjs') ;

(3)在js生成数据 ,拦截axios请求(了解)返回自己生成的假数据,具体代码如下
测试:

let Mock=require('mockjs')
//定义一个数组
var dataList = [];
//循环16次生成数据,并将数据放入到数组中,得到一个装有假数据的集合dataList
for(var i=0;i<16;i++){
dataList.push(Mock.mock({
'id': '@increment',
'name': '@cname',
'phone': /^1[0-9]{10}$/,
'email': '@email',
'address': '@county(true)',
'createTime': '@date("yyyy-MM-dd")'
}));
}
//分页,index是起始数据,size带表条数index*size,带表结束数据
function pagination(index, size, list){
return list.slice((index-1)*size,index*size);
}
//拦截axios请求opts,前端传入的参数 para new RegExp('/user/list',拦截的路径
Mock.mock(new RegExp('/user/list'), 'post', (opts) => {
//把上面得到的假数据赋值给list集合
var list =dataList;
console.log(opts.body)
//取出传递过来的参数的当前页
var index = JSON.parse(opts.body).page; //3
//写死的一页条数
var size = 10;
//总条数
var total = list.length
//调用分页方法,分页
list = pagination(index, size, list)
//拦截ajax请求后将假数据的结果返回
return {
'total': total,
'data': list
}
})

5.使用axios发送请求完成(vue.crud)

安装axios

1.cd 当前项目名

2.npm install axios --save

测试:具体代码如下

<template>
<div>
<!--工具条-->
<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
<el-form :inline="true">
<el-form-item>
<el-input placeholder="关键字"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary">查询</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary">新增</el-button>
</el-form-item>
</el-form>
</el-col>
<!--users就是前端页面展示内容的数据-->
<el-table
:data="users"
style="width: 100%"
border
height="450px"
> <el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="address"
label="地址">
</el-table-column>
<el-table-column
prop="email"
label="邮件">
</el-table-column>
<el-table-column
prop="phone"
label="电话">
</el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
width="180">
</el-table-column>
<el-table-column
fixed="right"
label="操作"
width="100">
<template slot-scope="scope">
<el-button @click="handleClick(scope.row)" type="text" size="small">查看</el-button>
<el-button type="text" size="small">编辑</el-button>
</template>
</el-table-column>
</el-table>
<el-col :span="24" class="toolbar">
<el-pagination layout="prev, pager, next" @current-change="handleCurrentChange" :page-size="10" :total="total" style="float:right;">
</el-pagination>
</el-col>
</div>
</template>
<script>
export default {
data() {
return {
users: [],
total:0,
page:1
} },
methods:{
getUsers(){
//这个是对象 {key:value}
let para = {
page:this.page
} //加载数据
//发送ajax 从后台查询出来...没有写后台 --模拟后台数据 mockjs
//res就是假数据返回的结果
this.$http.post('/user/list',para).then(res=>{
console.log(res);
//自动假数据封装成一个data对象
//将加数据取出后赋值给当前页面中的users,然后就可以展示了
this.users = res.data.data;
//
this.total = res.data.total;
});
},
    //监听当前页面的改变
handleCurrentChange(val){
//currentPage
console.log(val);
//把当前页 赋值给page这个字段
this.page = val;
this.getUsers();
}
},
mounted(){
//页面加载完之后执行的方法
this.getUsers();
}
};
</script>

elementui入门的更多相关文章

  1. element-ui入门

    element-ui入门 element-ui是一个ui库,它不依赖于vue.但是却是当前和vue配合做项目开发的一个比较好的ui框架. Layout布局(el-row.el-col) element ...

  2. elementui入门以及nodeJS环境搭建

    1. ElementUI简介 我们学习VUE,知道它的核心思想式组件和数据驱动,但是每一个组件都需要自己编写模板,样式,添加事件,数据等是非常麻烦的, 所以饿了吗推出了基于VUE2.0的组件库,它的名 ...

  3. ElementUI入门和NodeJS环境搭建

    1. ElementUI简介 我们学习VUE,知道它的核心思想式组件和数据驱动,但是每一个组件都需要自己编写模板,样式,添加事件,数据等是非常麻烦的,   所以饿了吗推出了基于VUE2.0的组件库,它 ...

  4. 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)

    [原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...

  5. elementUI+nodeJS环境搭建

    一. ElementUI简介 我们学习VUE,知道它的核心思想式组件和数据驱动,但是每一个组件都需要自己编写模板,样式,添加事件,数据等是非常麻烦的, 所以饿了吗推出了基于VUE2.0的组件库,它的名 ...

  6. spring boot + vue + element-ui全栈开发入门——开篇

    最近经常看到很多java程序员朋友还在使用Spring 3.x,Spring MVC(struts),JSP.jQuery等这样传统技术.其实,我并不认为这些传统技术不好,而我想表达的是,技术的新旧程 ...

  7. spring boot + vue + element-ui全栈开发入门——基于Electron桌面应用开发

     前言 Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并到同一个运行时环 ...

  8. spring boot + vue + element-ui全栈开发入门

    今天想弄弄element-ui  然后就在网上找了个例子 感觉还是可以用的  第一步是完成了  果断 拿过来  放到我这里这  下面直接是连接  点进去 就可以用啊 本想着不用vue   直接导入连接 ...

  9. 基于vue-cli、elementUI的Vue超简单入门小例子

    - 这个例子还是比较简单的,独立完成后,能大概知道vue是干嘛的,可以写个todoList的小例子. - 开始写例子之前,先对环境的部署做点简单的介绍,其实和Vue官方的差不多. #如若没有安装过vu ...

随机推荐

  1. 看淡生死,不服就干(C语言指针)

    看淡生死,不服就干 emmmmm 其实今天蛮烦的 高等数学考的一塌糊涂 会的不会的都没写 真心没有高中轻松了啊 也不知道自己立的flag还能不能实现 既然选择了就一定坚持下去啊 下面还是放一段之前写的 ...

  2. java课笔记

    http://127.0.0.1:8088/ http://127.0.0.1:8088/test/index.jsp http://127.0.0.1:8088/test/show 用户 (请求) ...

  3. epoll介绍及使用

    小程序功能:简单的父子进程之间的通讯,子进程负责每隔1s不断发送"message"给父进程,不需要跑多个应用实例,不需要用户输入. 首先上代码 #include<assert ...

  4. SCAU-1078 破密-数学的应用

        另外一种方法和该题的题目在这位大佬的博客里 SCAU 1078 破密 还可以参考 https://blog.csdn.net/sinat_34200786/article/details/78 ...

  5. Android加载大量图片内存溢出解决办法

    当我们在做项目过程中,一遇到显示图片时,就要考虑图片的大小,所占内存的大小,原因就是Android分配给Bitmap的大小只有8M,试想想我们用手机拍照,普通的一张照片不也得1M以上,所以androi ...

  6. 扛把子组作业要求 20191024-3 互评Alpha阶段作品

    此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/9860] 组名:扛把子 组长:迟俊文 组员:宋晓丽 梁梦瑶 韩昊 刘信鹏 ...

  7. "PSP助手”微信小程序宣传视频链接及内容介绍

    此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/8677] 队名:扛把子组 组长:迟俊文 组员:刘信鹏 韩昊 宋晓丽 梁梦 ...

  8. [CSS七分钟系列]都1902年了,还不知道用margin:auto给flex容器内元素分组?

    最近看到几篇博文讲解margin:auto在flex容器中的使用,可惜的是大多讲解都浮于页面表现,没深究其中的作用机理,本文在此浅薄对其表现机理做简单探讨. 引子 日常业务迭代过程中,flex已经是前 ...

  9. php+redis实现注册、删除、编辑、分页、登录、关注等功能

    本文实例讲述了php+redis实现注册.删除.编辑.分页.登录.关注等功能.分享给大家供大家参考,具体如下: 主要界面 ​ 连接redis redis.php <?php //实例化 $red ...

  10. Selenium WebDriver 中鼠标事件

    鼠标点击操作  鼠标点击事件有以下几种类型:  清单 1. 鼠标左键点击   Actions action = new Actions(driver);action.click();// 鼠标左键在当 ...