当前位置:   article > 正文

vue-cli搭建过程,elementUI搭建使用过程

vue-cli搭建过程,elementUI搭建使用过程

vue-cli

vue-cli 官方提供的一个脚手架,用于快速生成一个 vue 的项目模板;预先定义
好的目录结构及基础代码,就好比咱们在创建 Maven 项目时可以选择创建一个
骨架项目,这个骨架项目就是脚手架,我们的开发更加的快速。

主要功能

统一的目录结构

本地调试

热部署

单元测试

集成打包上线

需要的环境

Node.js

简单的说 Node.js 是一个前端 js 运行环境或者说是一个 JS 语言解释器。

npm
npm 是 Node.js 的包管理工具,用来安装各种 Node.js 的扩展。npm 是
JavaScript 的包管理工具,也是世界上最大的软件注册表。有超过 60 万个
JavaScript 代码包可供下载。npm 让 JavaScript 开发人员可以轻松地使用
其他开发人员共享的代码。

下载地址

https://nodejs.org/en/download

下载成功后输入以下指令进行测试

这样就算安装成功,如果你的npm下载组件有问题建议换成华为的镜像源输入以下指令即可

npm config set registry https://mirrors.huaweicloud.com/repository/npm/

使用HbuilderX搭建一个vue-cli项目

创建一个这样的项目,创建成功后在命令行窗口启动项目

输入命令npm run serve

启动成功后,会出现访问项目地址:http://127.0.0.1:8080/
在命令行中 ctrl+c 停止服务

也可以右键项目选择外部命令里面的npm run serve

 

组件路由

vue router 是 Vue.js 官方的路由管理器。它和 Vue.js 的核心深度集成,让构建
单页面应用变得易如反掌。

安装

vue-router 是一个插件包,所以我们还是需要用 npm 来进行安装的。打开命令行工具,进入你的项目目录,输入下面命令。

npm i vue-router@3.5.3

搭建步骤

1.创建router目录

创建 index.js 文件,在其中配置路由

  1. import Vue from 'vue';
  2. import router from 'vue-router';
  3. // 导入其他组件
  4. import login from '../login.vue';
  5. import Main from '../Main.vue';
  6. Vue.use(router);
  7. var rout = new router({
  8. routes: [
  9. {
  10. // 网页打开直接访问这个组件,component后面的名字必须与导入的组件名字相同
  11. path:'/',
  12. component:login
  13. },
  14. {
  15. path:'/login',
  16. component:login
  17. },
  18. {
  19. path:'/Main',
  20. component:Main
  21. }
  22. ]
  23. });
  24. // 导出组件
  25. export default rout;

组件都是.vue文件,有两个组件

  1. <!-- 一个.vue文件是一个组件,可以理解为一个页面,但是和页面不同
  2. 内容都写在一个template标签中,
  3. template标签必须有一个根标签
  4. -->
  5. <template>
  6. <div class="login_container">
  7. <!-- 登录盒子-->
  8. <div class="login_box">
  9. <!-- 头像盒子-->
  10. <div class="img_box">
  11. <img src="./assets/logo.png" />
  12. </div>
  13. <!-- 登录表单-->
  14. <div style="margin-top: 100px;padding-right: 20px;">
  15. <el-form ref="form" label-width="80px">
  16. <el-form-item label="账号">
  17. <el-input v-model="account" ></el-input>
  18. </el-form-item>
  19. <el-form-item label="密码">
  20. <el-input v-model="password" show-password></el-input>
  21. </el-form-item>
  22. <el-form-item>
  23. <el-button type="primary" @click="login()">登录</el-button>
  24. <el-button>取消</el-button>
  25. </el-form-item>
  26. </el-form>
  27. </div>
  28. </div>
  29. </div>
  30. </template>
  31. <script>
  32. /* 导出组件,并为组件定义数据,函数,生命周期函数 */
  33. export default{
  34. data(){
  35. return{
  36. account:"",
  37. password:""
  38. }
  39. },
  40. methods:{
  41. login(){
  42. //前端验证账号和密码不能为空
  43. if(this.account.length==0){
  44. this.$message({ message: '账号不能为空!',type: 'warning'});
  45. return;
  46. }
  47. if(this.password.length==0){
  48. this.$message({ message: '密码不能为空!',type: 'warning'});
  49. return;
  50. }
  51. //与后端交互
  52. //后端向应一个结果
  53. this.$router.push("/main");
  54. }
  55. }
  56. }
  57. </script>
  58. <style>
  59. .login_container{
  60. height: 100vh;
  61. margin: 0px;
  62. padding: 0px;
  63. background-image: url(assets/bg.jpg);
  64. background-repeat: no-repeat;
  65. background-size: cover;
  66. }
  67. .login_box{
  68. width: 450px;
  69. height: 350px;
  70. background-color: #fff;
  71. border-radius: 10px;
  72. position: absolute;
  73. left: 50%;
  74. top: 50%;
  75. transform: translate(-50%,-50%);
  76. opacity: 0.95;
  77. }
  78. .img_box{
  79. width: 130px;
  80. height: 130px;
  81. position: absolute;
  82. left: 50%;
  83. transform: translate(-50%,-50%);
  84. background-color: #fff;
  85. border-radius: 50%;
  86. padding: 5px;
  87. border: 1px solid #eee;
  88. }
  89. .img_box img{
  90. width: 100%;
  91. height: 100%;
  92. border-radius: 50%;
  93. background-color: #eee;
  94. }
  95. </style>
  1. <template>
  2. <div>
  3. 登录成功
  4. </div>
  5. </template>
  6. <script>
  7. </script>
  8. <style>
  9. </style>

2.在Main.js配备路由

  1. import Vue from 'vue'
  2. import App from './App.vue'
  3. Vue.config.productionTip = false
  4. // 引入组件
  5. import router from './router/index.js'
  6. Vue.use(router);
  7. //引入elementui
  8. import ElementUI from 'element-ui';
  9. import 'element-ui/lib/theme-chalk/index.css';
  10. Vue.use(ElementUI)
  11. new Vue({
  12. render: h => h(App),
  13. router,
  14. }).$mount('#app')

 3.使用路由(App.vue)

  1. <template>
  2. <div id="app">
  3. <!-- 显示组件 -->
  4. <router-view></router-view>
  5. </div>
  6. </template>
  7. <script>
  8. export default {
  9. name: 'app'
  10. }
  11. </script>
  12. <style>
  13. #app {
  14. }
  15. </style>

elementUI

Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组
件库.

安装elementUI

执行下面代码下载elementUI

npm i element-ui -S

在 main.js 中写入以下内容:
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
new Vue({
render: h => h(App),
}).$mount('#app');

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号