热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vueelementadmin综合开发一:搭建环境:vuecli创建项目,整合element、vuerouter。

文章目录导言-大纲一、vue环境搭建二、创建项目:vuecreate三、配置element-ui1、完整引入a、修改main.jsb、修改自带的页面:H

文章目录

  • 导言-大纲
  • 一、vue环境搭建
  • 二、创建项目:vue create
  • 三、配置element- ui
    • 1、完整引入
      • a、修改main.js
      • b、修改自带的页面:HelloWorld.vue
      • c、展示
      • d、打包后大小
    • 2、 按需引入
      • a、按需引入配置
      • b、修改main.js
      • c、修改自带的页面:HelloWorld.vue
      • d、展示
      • e、打包后大小
  • 四、配置vue-router 插件
    • 1. 安装vue-router
    • 2. 配置 main.js
    • 3. 新建 router/index.js
    • 4. 新建 views/Home.vue
    • 5. 修改 APP.vue
    • 6. 截止到现在的项目结构
  • 五、vue-router的 小案例
    • 1. 案例描述
    • 2. 新建 User.vue
    • 3. 修改 router/index.js
    • 4. 修改 HelloWorld.vue 增加路由跳转
    • 5. 页面展示
  • 配置中报错信息
    • 1.
    • 2. Vue.use()和Vue.component()
    • 3. 按需引入引发的血案


导言-大纲
一、vue环境搭建
  1. vscode 安装vue 相关插件:vetur:解决template白色问题
  2. vscode 安装vue 相关插件:vue.volar:vue代码提示
  3. 安装node.js:通过安装 node.js 来获取 npm包管理器
  4. 安装yarn:npm install -g yarn 安装 yarn 包管理器。
  5. 安装vue脚手架:npm install -g @vue/cli
  6. 安装yarn:npm install -g
  7. 命令行方式创建项目:vue creare 项目名
    在这里插入图片描述

二、创建项目:vue create
  1. 执行命令:vue creare vue-element-admin
  2. 选择Vue2yarn 环境进行安装:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    这里我没有安装git,所以会爆一个警告。

三、配置element- ui
  1. 跟着element官网走
  2. npm i element-ui -S

1、完整引入


  1. 跟着element官网走

a、修改main.js

import Vue from 'vue'
import ElementUI from 'element-ui'; // 完整引入代码
import 'element-ui/lib/theme-chalk/index.css'; // 完整引入代码
import App from './App.vue'Vue.config.productionTip = false
Vue.use(ElementUI) // 完整引入代码new Vue({render: h => h(App),
}).$mount('#app')

b、修改自带的页面:HelloWorld.vue

<template><div class&#61;"hello"><el-button>按钮el-button>div>
template>

c、展示

运行命令&#xff1a;npm run serve or yarn run serve
在这里插入图片描述

d、打包后大小


  1. 执行命令&#xff1a;npm run build&#xff0c;生成 dist文件
  2. 查看dist大小&#xff0c;一会对比下面按需打包后的大小
    在这里插入图片描述
  3. 查看dist/js大小&#xff0c;一会对比下面按需打包后的大小
    在这里插入图片描述

2、 按需引入


  1. 跟着element官网走

a、按需引入配置


  1. npm install babel-plugin-component -D 官网的按需引入第一个就是引入插件
  2. .babelrc 改为

    {"presets": [["es2015", { "modules": false }]],"plugins": [["component",{"libraryName": "element-ui","styleLibraryName": "theme-chalk"}]]
    }


b、修改main.js

在这里插入图片描述

c、修改自带的页面&#xff1a;HelloWorld.vue

在这里插入图片描述

d、展示

可以看到main.js 中的按钮已经引入&#xff0c;单选框没有引入所以只显示文字不显示样式。
在这里插入图片描述

e、打包后大小


  1. 执行命令&#xff1a;npm run build&#xff0c;生成 dist文件
  2. 查看dist大小&#xff0c;与上面的完整引入做对比
  3. 查看dist/js大小&#xff0c;与上面的完整引入做对比

四、配置vue-router 插件

1. 安装vue-router


  1. npm i vue-router&#64;3.2.0

2. 配置 main.js

共有两步

import Vue from &#39;vue&#39;
import {Button} from &#39;element-ui&#39;;
import &#39;element-ui/lib/theme-chalk/index.css&#39;;
import App from &#39;./App.vue&#39;import router from &#39;./router&#39;. // 1. 配置的路由Vue.config.productionTip &#61; false//Vue.component(Button)
Vue.use(Button)new Vue({router, // 2. 配置的路由render: h &#61;> h(App),
}).$mount(&#39;#app&#39;)

3. 新建 router/index.js

import Vue from &#39;vue&#39;
import VueRouter from &#39;vue-router&#39;
//import Home from &#39;../views/Home.vue&#39;Vue.use(VueRouter)const routes &#61; [{path: &#39;/&#39;,name: &#39;Home&#39;,//component: Home, // 第一种方式component: () &#61;> import(&#39;../views/Home.vue&#39;) // 第二种方式}
]const router &#61; new VueRouter({mode: &#39;history&#39;,routes
})
export default router;

4. 新建 views/Home.vue

<template><div>我是home 页面div>
template><script>
export default {name: &#39;Home&#39;,data(){return {}}
}
script>

5. 修改 APP.vue

添加组件

<template><div id&#61;"app"><img alt&#61;"Vue logo" src&#61;"./assets/logo.png"><HelloWorld msg&#61;"Welcome to Your Vue.js App"/><router-view>router-view>div>
template>

6. 截止到现在的项目结构

在这里插入图片描述

五、vue-router的 小案例

1. 案例描述

两个按钮&#xff0c;一个Home按钮&#xff0c;一个User按钮
点击Home按钮显示Home 页面&#xff0c;点击User按钮显示User页面
Home页面前面写了&#xff0c;这里就只写User

2. 新建 User.vue

<template><div>我是 User 页面div>
template><script>
export default {name: &#39;User&#39;,data(){return {}}
}
script>

3. 修改 router/index.js

新增User页面。

import Vue from &#39;vue&#39;
import VueRouter from &#39;vue-router&#39;
import User from &#39;../views/User&#39;Vue.use(VueRouter)const routes &#61; [{path: &#39;/&#39;,name: &#39;Home&#39;,component: () &#61;> import(&#39;../views/Home.vue&#39;) // 第二种方式},{path: &#39;/user&#39;,name: &#39;User&#39;,component: User // 第一种方式}
]const router &#61; new VueRouter({mode: &#39;history&#39;,routes
})
export default router;

4. 修改 HelloWorld.vue 增加路由跳转

<template><div class&#61;"hello"><router-link to&#61;"/"><el-button>Home按钮el-button>router-link><router-link to&#61;"/user"><el-button type&#61;"primary">User按钮el-button>router-link><el-radio v-model&#61;"radio" label&#61;"1">备选项el-radio>div>
template>

5. 页面展示


  1. 点击Home按钮
    在这里插入图片描述
  2. 点击User按钮
    在这里插入图片描述

配置中报错信息

1.

You may use special comments to disable some warnings.
Use // eslint-disable-next-line to ignore the next line.
Use /* eslint-disable */ to ignore all warnings in a file.
ERROR in [eslint]
/Users/alsc/fengjianchi/web_front/vue_ele_admin/src/views/Home.vue9:9 error Component name "Home" should always be multi-word vue/multi-word-component-names✖ 1 problem (1 error, 0 warnings)

关闭eslint

2. Vue.use()和Vue.component()

Unknown custom element: <router-view> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

没有分清use和component的用法
引入vue-router时&#xff0c;我用的use&#xff0c;按说应该是component。
use引入插件&#xff0c;component引入组件
vue中Vue.use与vue.component的区别

3. 按需引入引发的血案

Property or method "radio" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property.

页面正常&#xff0c;数据正常&#xff0c;没有引入样式的地方是没有样式的&#xff0c;并且控制台会爆这个错误
将那个备选项注释掉即可
在这里插入图片描述


推荐阅读
  • 本文介绍了JavaScript进化到TypeScript的历史和背景,解释了TypeScript相对于JavaScript的优势和特点。作者分享了自己对TypeScript的观察和认识,并提到了在项目开发中使用TypeScript的好处。最后,作者表示对TypeScript进行尝试和探索的态度。 ... [详细]
  • 微信民众号商城/小顺序商城开源项目介绍及使用教程
    本文介绍了一个基于WeiPHP5.0开发的微信民众号商城/小顺序商城的开源项目,包括前端和后端的目录结构,以及所使用的技术栈。同时提供了项目的运行和打包方法,并分享了一些调试和开发经验。最后还附上了在线预览和GitHub商城源码的链接,以及加入前端交流QQ群的方式。 ... [详细]
  • 网络请求模块选择——axios框架的基本使用和封装
    本文介绍了选择网络请求模块axios的原因,以及axios框架的基本使用和封装方法。包括发送并发请求的演示,全局配置的设置,创建axios实例的方法,拦截器的使用,以及如何封装和请求响应劫持等内容。 ... [详细]
  • 本文记录了在vue cli 3.x中移除console的一些采坑经验,通过使用uglifyjs-webpack-plugin插件,在vue.config.js中进行相关配置,包括设置minimizer、UglifyJsPlugin和compress等参数,最终成功移除了console。同时,还包括了一些可能出现的报错情况和解决方法。 ... [详细]
  • 1.移除consol.log()的babel插件安装:npmibabel-plugin-transform-remove-console-D配置:babel.config.js:这 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 本文介绍了如何使用vue-awesome-swiper组件,包括在main.js中引入和使用swiper和swiperSlide组件,以及设置options和ref属性。同时还介绍了如何在模板中使用swiper和swiperSlide组件,并展示了如何通过循环渲染swipes数组中的数据,并使用picUrl属性显示图片。最后还介绍了如何添加分页器。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • 如何优化Webpack打包后的代码分割
    本文介绍了如何通过优化Webpack的代码分割来减小打包后的文件大小。主要包括拆分业务逻辑代码和引入第三方包的代码、配置Webpack插件、异步代码的处理、代码分割重命名、配置vendors和cacheGroups等方面的内容。通过合理配置和优化,可以有效减小打包后的文件大小,提高应用的加载速度。 ... [详细]
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
  • npmrunbuild后dist文件夹下面直接浏览器打开index.html,css和js的路径都不正确。放到跟目录下就正常了,iis上同样只能在根目录下。我项目的目录如下: ... [详细]
  • 【前端工具】nodejs+npm+vue 安装(windows)
    预备先看看这几个是干嘛的,相互的关系是啥。nodejs是语言,类比到php。npm是个包管理,类比到composer。vue是个框架&# ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
  • ReactJSUIAnt设计空组件原文:https://w ... [详细]
  • 本文讨论了在dva中引入antd组件table时没有显示样式的问题。提供了.roadhogrc文件的配置,包括环境和import的设置。同时介绍了extraBabelPlugins和transform-runtime的使用方法,并解释了libraryName和css的含义。 ... [详细]
author-avatar
雷诺gg
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有