vue项目实战总结篇

这篇文章把小编前段时间做的vue项目,做个完整的总结,具体内容请参考本文。

这次算是详细总结,会从项目的搭建,一直到最后的服务器上部署。

废话不多说了。干货直接上。

一、 必须node环境, 这次就不写node环境的安装了。过两天我会写个node环境的安装随笔。

二、 node环境配好后。开整vue。

1. 安装vue脚手架。

 npm install -g vue-cli

2. 用脚手架搭项目(只是一行命令) 

 vue init webpack-simple (项目名字)

  或 

 vue init webpack (项目名字)

  二者区别(个人理解):

    vue init webpack-simple :可以理解为轻巧的,没有多余的配置和包,但能保证项目正常运行。

    vue init webpack : 可以理解为完整的,包含比较多配置和包。

3. 本次选用 vue init webpack 完整版的。

  (1) 执行完vue init webpack,会遇见以下选项。

 完成上述选(按需选择),等把所需依赖下载完后。

 (2) 进入刚建的项目里,执行npm install

  eg: PS E:\vueTest\vueTest2> npm run dev

  当 出现下面的话,就证明你的vue项目已经搭好了。

 

 (3) 打开浏览器,访问http://localhost:8080,

    当出现下面这个页面,说明vue项目正常运行了。框架已搭好。

  

  (4) 骨架已搭好,现在给她血与肉,让她不在骨感。

    这次我们用 axios 进行向服务器请求

          vuex 来管理我们的前端数据。

  我们需要首先安装这两个依赖包,按套路走 : npm install axios vuex --save

    在此我做个补充,安装依赖包时,会使用到 --save-dev 或 --save

    安装的依赖包会在项目中这个文件package.json中展示

    --save: 上线后,要用到的。(执行后,会对应下图中dependencies)

    --save-de: 开发时,要用到的包.(执行后,会对应下图中devDependencies)   

  

  此处,我也有个问题: 安装的依赖包,是放到dependencies 中,还是devDependencies中?

  在网上找了半天也没有得到确切答案,只是笼统的说“开发环境用到的包放在devDependencies, 上线用到的依赖包放在dependencies”。所以,我就按自己的理解来放了,vue、vuex、axios、vue-router,放在dependencies,其他依赖包放在           devDependencies,  我的依据就是默认生成框架时,vue、vue-router 会放在dependencies中,所以,我觉得跟vue项目密切相关的vuex、axios也放在dependencies(只是个人见解)。

  (5) 依赖包已经安装完,现在。我们来配置 路由(router) 和 数据管理仓库(store)

    为了开发的规范和整洁,我把这两块儿,分别放在两个文件夹中

    

  (6) 现在分别来讲。先整 router(路由)。

  

  (7) 数据管理 ————仓库(store)

  这个建议先看看官网: https://vuex.vuejs.org/zh-cn/

  在这里我就给出细化的分类,以及大致流程图。

  在此store文件夹下的js截图:actions.js、 moutations.js、 index.js、 types.js、 getters.js

  

    index.js 负责管理 actions.js 和 moutations.js

  actions.js 相当于java,中的service层,相当于是接口。 (如果不熟悉java,你就认为,actions.js的目的是,可以认为这是书的目录。为了让项目整洁,一目了然,清楚阅览actions.js ,每个操存储操作的目的 )

  moutations.js 相当于java,中的dao层,与存取数据有关。(如果不熟悉java,你就认为,moutations.js的目的是,存数据,把数据存到变量里,保存起来)。

  getters.js 就是获取仓库中数据的方法。 (目的是,把所有的获取数据操作放在一起。方便管理与查找)。

  types.js 清楚表明,存数据时,actions.js 的方法 和 moutations.js 中的方法, 一对一对应。这样条理清晰。

  大致给出了actions.js 、 motations 、 getters 三者之间的关系。

  

  (8) vue 中模拟数据。

  vue中模拟数据的意义: 当本地测试时,方法会访问模拟数据,当项目上线后,当调用方法时,会直接访‘“.do”请求,问服务器,回去数据库返回的数据。

  在vue项目中的创建mock数据: 在static中创建mock文件夹以及config.js如下图

  

  vue项目中如何配置mock数据,以及上线后的请求:

  最近做vue项目时,遇到了一个问题,模拟数据时,如何配置mock中的json数据。

  旧的vue脚手架中是通过 dev-server.js 来配置mock数据的。

但新的vue脚手架是下图,没有dev-server.js.这时mock数据怎么配置呢? 答案是,mock配置放在 webpack.dev.conf.js中。

找到webpack.dev.conf,js,并进行如下配置。

 (9). 项目完成后,打包命令是 npm run build.

  会在项目中,生成包。如下图:

(10). 把生成的项目打到服务器上,需要注意路径问题

  在项目中的config文件夹下的index.js 中assetsPublicPath,配置服务器路径。(按需求配置,此处我就用默认的了)

  

  到目前为止,vue相关的问题,大致整完了。

您可能感兴趣的文章:

  • node vue项目开发之前后端分离实战记录
  • Vue2.0如何发布项目实战
  • 详解vue项目构建与实战
  • vue2.0实战之使用vue-cli搭建项目(2)
(0)

相关推荐

  • node vue项目开发之前后端分离实战记录

    前言 本文主要介绍了关于node vue前后端分离的相关资料,分享出来供大家参考学习,下面随着小编来一起学习学习吧. node vue项目开发 最近看了近一周的vue开发,有诸多感触,我之前接触过react.angular所以特别想学学久仰大名的vue.学习半天以后发现,接触到的东西多了,学习起来就是容易很多,vue的指令我能个联想到angular的指令,vue组件化设计类似于react的组件化设计,包括一些router的设置跟react里的路由或者nodejs里的路由都差不多,vuex更是根据

  • Vue2.0如何发布项目实战

    大家好,这节我们主要讲解项目的发布,其实很简单,没有大家想的那么复杂,具体如下操作. 一.创建VUE项目 首先我们需要创建VUE项目,创建项目的代码如下: # 全局安装 vue-cli $ npm install --global vue-cli # 创建一个基于 webpack 模板的新项目 $ vue init webpack my-project # 安装依赖,走你 $ cd my-project $ npm install $ npm run dev 项目截图如下: 项目截图 二.项目打

  • vue2.0实战之使用vue-cli搭建项目(2)

    Vue-cli是官方推荐的快速构建单页应用的脚手架.官方给的建议,如果你是初次尝试Vue,哪就老老实实用普通的书写引入js文件,这里牵扯太多的东西,例如webpack.npm.nodejs等等,很容易成就从入门到放弃的思想.这篇文章本身就是按照官方的文档中的构建流程来的(官方构建建议).一下是构建过程. 一. 安装 node.js 首先需要安装node环境,可以直接到中文官网http://nodejs.cn/下载安装包. 安装完成后,可以命令行工具中输入node -v和npm -v,如果能显示出

  • 详解vue项目构建与实战

    前言 由于vue相对来说比较平缓的学习过程和新颖的技术思路,使其受到了广大前后端开发者的青睐,同时其通俗易懂的API和数据绑定的功能也为其揽获了不少用户.本文主要讲解vue项目的构建与实战,因此不会太多涉及其API和语法部分,旨在帮助vue的入门级用户了解从零开始构建vue项目的步骤和方法. vue项目分类 首先,在构建一个vue项目之前我们需要了解vue项目的分类,这里我主要将其分为两类:(1)直接引入vue.js文件 (2)使用vue单文件组件 按以上两类来看,直接引入vue.js文件就像页

  • vue项目实战总结篇

    这篇文章把小编前段时间做的vue项目,做个完整的总结,具体内容请参考本文. 这次算是详细总结,会从项目的搭建,一直到最后的服务器上部署. 废话不多说了.干货直接上. 一. 必须node环境, 这次就不写node环境的安装了.过两天我会写个node环境的安装随笔. 二. node环境配好后.开整vue. 1. 安装vue脚手架. npm install -g vue-cli 2. 用脚手架搭项目(只是一行命令) vue init webpack-simple (项目名字) 或 vue init w

  • vue项目实战之优雅使用axios

    目录 axios传参 params与data传参 封装axios 总结 axios传参 params与data传参 params 传参:参数以 k=v&k=v 格式放置在 url 中传递. springboot后端可以使用@RequestParam注解接受请求,或者保证参数名跟k一样时也可以接收到 只要是使用params传参,无论是post请求还是get请求都是拼接都url中,此时的post请求也只是伪post请求 data传参:参数被放在请求体中. 后端必须使用@RequestBody来接收,

  • vue项目实战之圆柱状水波效果实现

    目录 1.先在data中定义有关参数和引入数据请求接口 1.字data中定义需要用到的参数 2.引入数据请求接口 2.再进行真实数据的获取 3.核心代码(主要是html和CSS代码) HTML代码: CSS代码块: 4.需要的图片素材 5.最终效果 总结 1.先在data中定义有关参数和引入数据请求接口 1.字data中定义需要用到的参数 specialList: [ { value: 0, height: 0, markKey: '' }, { value: 0, height: 0, mar

  • vue-router项目实战总结篇

    今天来谈谈vue项目{vue,vue-router,component}三大神将之一的vue-router.作为我们前后端分离很重要的实践之一,router帮我们完成了SPA应用间的页面跳转. 并且,配合axios这样的第三方库,我们可以实现配合后台接口的拦截器功能. 对于一个小型项目而言,router这个文件夹里面就包含了一个router.js就足够了, 但是,当我们的页面比较多的时候,我们就需要分出两个文件出来:一个定义我们的路由和组件,另一个实例化组件,并将路由挂载到vue的实例上. 基本

  • Vue项目优化的一些实战策略

    Vue项目完成后就要从开发环境转成生产环境 一些第三方的包体积过大,导致生成js文件过于庞大,这是时候可以生成打包报告来查看项目中的问题 1.生成报告有两种方式,一种使用npm run build --report 2.另一种使用vue脚手架的ui可视化面板,在项目中输入vue ui 3.点击生产环境下的运行按钮,可以看到打包出来的js文件一共有2M之多,js/chunk-vendors.js就是一些项目依赖文件, 再右侧可以看到element-ui 和echarts 以及富文本编辑器,树状表格

  • Vue项目之ES6装饰器在项目实战中的应用

    目录 前言 装饰模式(Decorator) ES6 装饰器 装饰器应用 Validate CatchError Confirmation 总结 参考 前言 在面向对象(OOP)的设计模式中,装饰器的应用非常多,比如在 Java 和 Python 中,都有非常多的应用.ES6 也新增了装饰器的功能,本文会介绍 ES6 的装饰器的概念.作用以及在 Vue + ElementUI 的项目实战中的应用. 装饰模式(Decorator) 装饰模式(Decorator Pattern)允许向一个现有的对象添

  • Vue实现前后端完全分离的项目实战

    目录 1.Vue 2. 安装Nodejs服务器 2.1安装npm 2.2 安装vue的脚手架 3. 使用脚手架创建Vue工程 3.1.在cmd窗口中输入命令,打开创建界面 3.2创建 3.3创建完成后 4.使用WebStorm打开Vue工程 5.App.vue组件 5.1一个组件引用另一个组件: 5.2父组件如何向子组件传值 6.浅谈路由 1.Vue 我们之前项目中也使用到了Vue,但是我们之前的vue和我们的java代码是不是都在一个工程下.没有做到前后端完成分离.企业中前端也会由自己的服务器

  • webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)

    最近在使用webpack + vue做个人娱乐项目时,发现npm run build后,css js img静态资源文件均找不到路径,报404错误...网上查找了一堆解决办法,总结如下 一.首先修改config目录下的index.js文件 将其中build的配置项assetsPublicPath进行修改,改为 目的是将资源文件的引入路径,改为相对地址(相对index.html) 二.此时html中的js.css.img引入均没有问题,但是css中的background-image还是报404 此

随机推荐