首页 > web前端 > js教程 > 正文

vue.js、element-ui、vuex环境搭建实例分享

小云云
发布: 2018-03-07 13:19:35
原创
4069 人浏览过

本文主要和大家分享vue.js、element-ui、vuex环境搭建实例,本文主要以图文实例和代码分享,希望能帮助到大家。

一、初始化项目

vue init webpack <project-name>
登录后复制

这里写图片描述

二、初始化依赖包

npm install
登录后复制

三、运行调试

npm run dev
登录后复制

地址栏输入localhost:8080

这里写图片描述

四、导入elementUI包

npm install --save vue element-ui
登录后复制

五、导入vue-router包

npm install --save vue-router
登录后复制

六、导入axios包

npminstall --save axios
登录后复制

七、安装sass-loader以及node-sass插件

npm install sass-loader -Dnpm install node-sass -D
登录后复制

项目目录
这里写图片描述

八、修改调试

main.js里面引入vue element 和router:

import ElementUI from &#39;element-ui&#39;import &#39;element-ui/lib/theme-chalk/index.css&#39;;import VueRouter from &#39;vue-router&#39;Vue.use(ElementUI)
Vue.use(VueRouter)
登录后复制

这里写图片描述

新建登录vue文件:Ulogin.vue

<template>
  <el-form :model="ruleForm2" :rules="rules2" ref="ruleForm2" label-position="left" label-width="0px"
           class="demo-ruleForm login-container">
    <h3 class="title">系统登录</h3>
    <el-form-item prop="account">
      <el-input type="text" v-model="ruleForm2.account" auto-complete="off" placeholder="账号"></el-input>
    </el-form-item>
    <el-form-item prop="checkPass">
      <el-input type="password" v-model="ruleForm2.checkPass" auto-complete="off" placeholder="密码"></el-input>
    </el-form-item>
    <el-form-item style="width:100%;">
      <el-button type="primary" style="width:100%;" @click.native.prevent="handleSubmit2" >登录      </el-button>
    </el-form-item>
  </el-form></template><script>
  export default {
    name: "Ulogin.vue",
    data() {      var checkAccount = (rule, value, callback) => {        if (!value) {          return callback(new Error(&#39;请输入账号&#39;));
        } else if (value.length < 4 || value.length>12) {          return callback(new Error(&#39;账号名必须在4~12位&#39;));
        } else {
          callback();
        }
      };      var checkPass = (rule, value, callback) => {        if (value === &#39;&#39;) {          return callback(new Error(&#39;请输入密码&#39;));
        } else if (value.length < 2) {          return callback(new Error(&#39;密码不能小于两位&#39;));
        } else {          return callback();
        }
      };      return {
        ruleForm2: {
          account: &#39;&#39;,
          checkPass: &#39;&#39;
        },
        rules2: {
          account: [
            {validator: checkAccount, trigger: &#39;blur&#39;},
          ],
          checkPass: [
            {validator: checkPass, trigger: &#39;blur&#39;},
          ]
        }
      };
    },
    methods: {
      handleSubmit2(ruleForm2) {        this.$refs.ruleForm2.validate((valid) => {          if (valid) {
            alert(&#39;提交!&#39;)
          } else {
            alert(&#39;登陆失败!&#39;);
            console.log(&#39;error submit!!&#39;);            return false;
          }
        });
      }
    }
  }</script><style lang="scss" scoped>
  .login-container {    /*box-shadow: 0 0px 8px 0 rgba(0, 0, 0, 0.06), 0 1px 0px 0 rgba(0, 0, 0, 0.02);*/
    -webkit-border-radius: 5px;    border-radius: 5px;    -moz-border-radius: 5px;    background-clip: padding-box;    margin: 180px auto;    width: 350px;    padding: 35px 35px 15px 35px;    background: #fff;    border: 1px solid #eaeaea;    box-shadow: 0 0 25px #cac6c6;    .title {
      margin: 0px auto 40px auto;      text-align: center;      color: #505458;    }
    .remember {      margin: 0px 0px 35px 0px;    }
  }</style>
登录后复制

router内index.js文件配置路由:

import Ulogin from &#39;../components/Ulogin&#39;Vue.use(Router)

export default new Router({
  routes: [    // {
    //   path: &#39;/&#39;,
    //   name: &#39;HelloWorld&#39;,
    //   component: HelloWorld
    // },
    {
      path:&#39;/&#39;,
      name:&#39;&#39;,
      component:Ulogin
    }
  ]
})
登录后复制

App.vue

<template>
  <p id="app">
    <router-view/>
  </p></template><script>
  export default {
    name: &#39;App&#39;
  }</script><style>
  #app {    font-family: &#39;Avenir&#39;, Helvetica, Arial, sans-serif;    -webkit-font-smoothing: antialiased;    -moz-osx-font-smoothing: grayscale;    text-align: center;    color: #2c3e50;    margin-top: 60px;  }</style>
登录后复制

目录结构:

列表内容

运行:npm run dev
这里写图片描述
这里写图片描述
这里写图片描述

相关推荐:

vue、node、webpack环境搭建教程详解

实例详解vue环境搭建简单教程

2017年最好用的6个php环境搭建工具推荐

以上是vue.js、element-ui、vuex环境搭建实例分享的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板