博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue之项目搭建
阅读量:6161 次
发布时间:2019-06-21

本文共 4566 字,大约阅读时间需要 15 分钟。

  一、Vue自动化工具的安装

nvm:nodejs 版本管理工具。也就是说:一个 nvm 可以管理很多 node 版本和 npm 版本。nodejs:在项目开发时的所需要的代码库npm:nodejs 包管理工具。在安装的 nodejs 的时候,npm 也会跟着一起安装,它是包管理工具。npm 管理 nodejs 中的第三方插件

  1,安装nvm

  它是一个node管理工具,当我们的电脑上有多个node版本时,nvm可以帮我们切换node版本。

  下载地址:

  下载下来后解压安装就可以了,然后配置环境变量:我是解压在d盘的tool文件夹下,

  常用的nvm命令:直接在cmd中输入

nvm list                            # 列出目前在nvm里面安装的所有node版本nvm install node版本号            # 安装指定版本的node.jsnvm uninstall node版本号         # 卸载指定版本的node.jsnvm use node版本号                # 切换当前使用的node.js版本

  2,安装node

  由于我们已经安装上nvm,所以我们就可以借助nvm安装node,由于install默认是从国外下载,所以速度有可能会慢,我们可以把使用国内的镜像,这样速度就会快点,于是我们需要修改nvm文件夹下的settings.txt文件,

arch: 64proxy: nonenode_mirror: http://npm.taobao.org/mirrors/node/ npm_mirror: https://npm.taobao.org/mirrors/npm/ 只需要在settings.txt文件下加上这四行代码既可

  在cmd中输入:nvm install node版本号就行了

  3,安装npm

  在安装node完成后,会同时帮我们安装一个包管理器npm,所以在上面安装node的时候就已经帮我们安装好npm了。npm就相当于python的pip,可以通过npm命令来安装node的包。常用命令:

npm install -g 包名              # 安装模块   -g表示全局安装,如果没有-g,则表示在当前项目安装npm list                        # 查看当前目录下已安装的node包npm view 包名 engines            # 查看包所依赖的Node的版本 npm outdated                    # 检查包是否已经过时,命令会列出所有已过时的包npm update 包名                  # 更新node包npm uninstall 包名               # 卸载node包npm 命令 -h

  4,安装Vue-cli

  直接在cmd中输入:npm install -g vue-cli

  二、使用Vue-CLI创建项目

  例如我想d盘的data文件夹下创建一个vue项目,于是我们打开cmd,来到d盘下的data目录输入:vue init webpack 项目名

  访问提供的地址:

 

   项目创建完成。

// 生成一个基于 webpack 模板的新项目vue init webpack 项目名// 启动开发服务器 cd myprojectnpm run dev           # 运行这个命令就可以启动node提供的测试http服务器ctrl+c 停止服务器

  三、项目目录结构和执行流程

  1,目录结构

  用pycharm打开项目:

src   主开发目录,要开发的单文件组件全部在这个目录下的components目录下static 静态资源目录,所有的css,js文件放在这个文件夹dist项目打包发布文件夹,最后要上线单文件项目文件都在这个文件夹中[后面打包项目,让项目中的vue组件经过编译变成js 代码以后,dist就出现了]node_modules目录是node的包目录,config是配置目录,build是项目打包时依赖的目录src/router   路由,后面需要我们在使用Router路由的时候,自己声明.

  2,执行流程

   整个项目的主文件是index.html,index.html会引入src文件夹中的main.js文件,main.js文件会导入顶级单文件组件App.vue文件,App.vue文件会通过组件嵌套或者路由来引用components文件夹中的其他单文件组件。

 

  四、初始化项目

  1,清除页面上默认存在的东西,还原得到一个空白的页面

  1.1 删除helloworld组件

  1.2 清除App.vue下的样式

  现在,再次打开地址,就是空白的:

  2,安装路由vue-router

  2.1 下载路由组件

  要在本项目的目录下输入指令:npm install vue-router 

  2.2 配置路由

  首先在src文件夹创建一个routers的文件夹,然后再routers文件夹下创建一个index.js文件,写入:

import Vue from "vue"import Router from "vue-router"// 这里导入可以让让用户访问的组件Vue.use(Router);export default new Router({  // 设置路由模式为‘history’,去掉默认的#  mode: "history",  routes:[    // 路由列表  ]})

  其次是打开main.js文件,把router对象注册到vue中

  最后在App.vue组件,添加显示路由对应的内容

  这样,关于路由的配置就完成了,我们之后只需要在index.js文件中添加路由列表既可

  3、引入ElementUI

  在之前的前端页面中我们使用过jQuery,bootstrap框架,在vue前端项目中,我们可以使用ElementUl框架,它和bootstrap一样的,别人已经写好的组件,我们直接拿来用既可,很方便。

  3.1 快速安装elementUI

  在本项目的目录下输入指令:npm install element-ui

  3.2 配置elementUI

  在main.js文件中写入:

  4,引入axios

  4.1 下载axios

  在项目的目录下输入指令:npm install axios

  4.2 配置axios

  在main.js文件中,导入axios,并把它挂载到vue中

  五、创建一个组件

  1,在components文件夹中创建一个后缀为vue的文件

  2,添加路由列表

  在index.js文件中写入:

  六、创建子组件,添加到其他组件中,完成组件嵌套

  1,也是要创建组件

  只要是组件,其创建过程都是一样的,也要那三部分组成

  2,把子组件引入到其他组件中,我把forms组件引入到tables组件中去

  把子组件引入到其他组件中去,我们不需要对子组件做任何改动,只需要在父组件(即要引入子组件的组件)添加代码就行

  七、效果

  1,代码

tables.vue代码
forms.vue代码

  2,效果图

    上面完成了表格的增删改查功能。在tables组件中我用了axios向一个接口发送了请求,拿回很多省份的信息。tables组件和forms组件间实现了数据双向传递。从这个小小案例中基本反映出所有的功能,无论是多么大的页面,或者说有多少个组件;不管有多少个路由,你只需要添加路由列表和组件之间嵌套就可以实现任何东西了;任何组件都可以成为父组件,只要你往其中添加子组件就行;也都可以成为子组件,你只要把它添加到其他组件中既可;任何组件都也可以通过一个路由访问到,你只需给这个组件添加一个路由关系既可。

转载于:https://www.cnblogs.com/12345huangchun/p/10574161.html

你可能感兴趣的文章
架构师之路(一)- 什么是软件架构
查看>>
USACO 土地购买
查看>>
【原创】远景能源面试--一面
查看>>
B1010.一元多项式求导(25)
查看>>
10、程序员和编译器之间的关系
查看>>
配置 RAILS FOR JRUBY1.7.4
查看>>
修改GRUB2背景图片
查看>>
Ajax异步
查看>>
好记性不如烂笔杆-android学习笔记<十六> switcher和gallery
查看>>
JAVA GC
查看>>
3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)
查看>>
图解SSH原理及两种登录方法
查看>>
查询个人站点的文章、分类和标签查询
查看>>
基础知识:数字、字符串、列表 的类型及内置方法
查看>>
JSP的隐式对象
查看>>
JS图片跟着鼠标跑效果
查看>>
Leetcode 3. Longest Substring Without Repeating Characters
查看>>
416. Partition Equal Subset Sum
查看>>
app内部H5测试点总结
查看>>
[TC13761]Mutalisk
查看>>