12.0、vue+elementUI的学习与使用

12.0、vue+elementUI

第一步:首先创建一个项目hello-vue ,执行vue init webpack hello-vue

安装依赖,我们需要安装vue-router、element-ui、sass-loader和node-sass四个插件

#首先创建一个项目hello-vue
vue init webpack hello-vue
# 进入工程目录
cd hello-vue
#安装 vue-router
npm install vue-router --save-dev
#安装 element-ui
npm i element-ui -s
#安装依赖
npm install
#安装SASS加载器
cnpm install sass-loader node-sass --save-dev
#启动测试
npm run dev

        在安装完SASS加载器后可能会因为安装的SASS加载器版本过高而报错,这时候我们需要将

package.json中的"sass-loader": "^12.6.0",版本改为"sass-loader": "^7.3.1"即可成功运行。

第二步:创建一个Login组件,在ElementUI官网上找了一个表单组件Component拿过来测试一下

Login.vue文件

<el-form :model="numberValidateForm" ref="numberValidateForm" label-width="100px" class="demo-ruleForm">
  <el-form-item
    label="年龄"
    prop="age"
    :rules="[
      { required: true, message: '年龄不能为空'},
      { type: 'number', message: '年龄必须为数字值'}
    ]"
  >
    <el-input type="age" v-model.number="numberValidateForm.age" autocomplete="off"></el-input>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="submitForm('numberValidateForm')">提交</el-button>
    <el-button @click="resetForm('numberValidateForm')">重置</el-button>
  </el-form-item>
</el-form>
<script>
export default {
  data () {
    return {
      numberValidateForm: {
        age: ''
      }
    }
  },
  methods: {
    submitForm (formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          alert('submit!')
        } else {
          console.log('error submit!!')
          return false
        }
      })
    },
    resetForm (formName) {
      this.$refs[formName].resetFields()
    }
  }
}
</script>

第三步:在路由的index.js文件中

import Vue from 'vue'
import Router from 'vue-router'
import Content from '../components/Content'
import Main from '../components/Main'
import Login from '../components/Login'

Vue.use(Router)
export default new Router({
  routes: [
    {
      // 路由路径
      path: '/Login',
      name: 'Login',
      // 跳转的组件
      component: Login
    }
  ]
})

第四步:在main.js文件中

import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

Vue.config.productionTip = false
Vue.use(router)
Vue.use(ElementUI)

/* eslint-disable no-new */
new Vue({
  el: '#app',
  // 配置路由
  router,
  render: h => h(App)// ElementUI,给App.vue文件进行渲染,由于有路由的原因可以直接实现
})

第五步:在App.vue文件中

<template>
  <div id="app">
    <router-link to="/Login">登录</router-link>
    <router-view/>
  </div>
</template>

<script>
export default {
  name: 'App'
}
</script>

<style>
</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值