前置:

本系列文章是一个本人边学习边梳理的学习笔记,俗话说好脑袋不如烂笔头,再好的记忆力时间长了也会有细节忘记,本项目选择的前端框架是vue,后端开发使用是node.js,数据库使用的是mongodb,本系列文章重要内容主要有四点:

1.云服务器的购买,怎么使用xshell工具连接云服务器;

2.在本地及云服务器安装mongodb数据库,及数据库的使用;

3.梳理我在学习vue这个前端框架之后的完整项目的实际运用总结;

4.关于node.js开发后端的学习与梳理总结;

5.完整项目的上线部署;

vue前端开发篇

本文主要概括为以下几点:

  • 构建vue项目
  • vue-router梳理
  • vue-resource介绍、axios介绍与使用
  • vue项目的分页

一、构建vue项目

vue.js有著名的全家桶系列,包含了vue-router,vuex, vue-resource,再加上构建工具vue-cli,就是一个完整的vue项目的核心构成。  

vue-cli这个构建工具大大降低了webpack的使用难度,支持热更新,有webpack-dev-server的支持,相当于启动了一个请求服务器,给你搭建了一个测试环境,只关注开发就OK。

1)安装vue-cli

① 使用npm(默认已经安装node环境)全局安装webpack,打开命令行工具输入:npm install webpack -g或者(npm install -g webpack),安装完成之后输入 webpack -v,如下图,如果出现相应的版本号,则说明安装成功。
注意:webpack 4.X 开始,需要安装 webpack-cli 依赖 ,所以使用这条命令 npm install webpack webpack-cli -g

全局安装成功webpack:

全局安装vue-cli(命令:npm install -g vue-cli),安装完成后输入 vue -V(这里V是大写V):

证明vue-cli脚手架全局安装成功。

2)使用vue-cli构建vue项目

① 我首先在新建如下目录作为项目存放地:

然后使用命令行cd进入到项目目录输入:

vue init webpack vue-node-webpack4复制代码

出现如下图所示:

选项前几个都是yes,ESLint是代码规范与错误检测工具,暂时不选,unit是单元测试工具,是站在开发者角度测试,暂时不选,e2e也是单元测试工具,e2e测试是把我们的程序堪称是一个黑盒子,我不懂你内部是怎么实现的,我只负责打开浏览器,把测试内容在页面上输入一遍,看是不是我想要得到的结果,暂时不选。

注意:unit测试是程序员写好自己的逻辑后可以很容易的测试自己的逻辑返回的是不是都正确。e2e代码是测试所有的需求是不是都可以正确的完成,而且最终要的是在代码重构,js改动很多之后,需要对需求进行测试的时候测试代码是不需要改变的,你也不用担心在重构后不能达到客户的需求。

② 配置完成后,可以看到目录下多出了一个项目文件夹vue-node-webpack4,然后cd进入这个文件夹,安装依赖:

npm install复制代码
( 如果安装速度太慢。可以安装淘宝镜像,打开命令行工具,输入:npm install -g cnpm --registry=https://registry.npm.taobao.org 然后使用cnpm来安装 )

然后安装完目录结构如下图:

3)启动项目

npm run dev复制代码

如果浏览器打开之后,没有加载出页面,有可能是本地的 8080 端口被占用,需要修改一下配置文件 config里的index.js

如果本地调试项目时,建议将build 里的assetsPublicPath的路径前缀修改为 ' ./ '(开始是 ' / '),因为打包之后,外部引入 js 和 css 文件时,如果路径以 ' / ' 开头,在本地是无法找到对应文件的(服务器上没问题)。所以如果需要在本地打开打包后的文件,就得修改文件路径。
我的端口没有被占用,直接成功(服务启动成功后浏览器会默认打开一个“欢迎页面”):

启动命令这块解释:

注意:在进行vue页面调试时,一定要去谷歌商店下载一个vue-tool扩展程序。 

4)vue-cli的webpack配置分析

从package.json可以看到开发和生产环境的入口 。

  • 可以看到dev中的设置,build/webpack.dev.conf.js,该文件是开发环境中webpack的配置入口。
  • 在webpack.dev.conf.js中出现webpack.base.conf.js,这个文件是开发环境和生产环境,甚至测试环境,这些环境的公共webpack配置。
  • 更详细配置文件信息请看segmentfault.com/a/119000000…

5)打包上线

注意,自己的项目文件都需要放到 src 文件夹下。
在项目开发完成之后,可以输入 npm run build 来进行打包工作。
npm run build复制代码

打包完成后,会生成 dist 文件夹,如果已经修改了文件路径,可以直接打开本地文件查看。

项目上线时,只需要将 dist 文件夹放到服务器就行了。

二、vue-router梳理

三、vue-resource介绍、axios介绍与使用

1、vue-resource

Vue.js的插件提供了使用XMLHttpRequest或JSONP 进行Web请求和处理响应的服务

单来说,vue-resource就像jQuery里的$.ajax,用来进行数据交互。

特点:

  • 体积小
  • 支持主流的浏览器(ie9以下不支持)
  • 支持Promise API和URI Templates(Promise是ES6的特性,Promise的中文含义为“先知”,Promise对象用于异步计算。URI Templates表示URI模板,有些类似于ASP.NET MVC的路由模板。)
  • 支持拦截器(拦截器是全局的,拦截器可以在请求发送前和发送请求后做一些处理。

    拦截器在一些场景下会非常有用,比如请求发送前在headers中设置access_token,或者在请求失败时,提供共通的处理方式。)

2、axios

vue2.0之后,就不再对vue-resource更新,而是推荐使用axios。基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 Node.js 中使用。

特点:

  • 在浏览器中发送 XMLHttpRequests 请求
  • 在 node.js 中发送 http请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求和响应数据
  • 取消请求
  • 自动转换 JSON 数据
  • 客户端支持保护安全免受 CSRF/XSRF 攻击

get请求方式如下:

方向代理的配置如下:

四、vue项目的滚动加载分页

vue滚动加载的插件:vue-infinite-scroll

安装命令如下:

npm install vue-infinite-scroll --save复制代码

五、左侧菜单高亮

通过索引判断高亮

详细记录基于vue+nodejs+mongodb构建的商城学习(三)基于项目的vue框架梳理相关推荐

  1. 详细记录基于vue+nodejs+mongodb构建的商城学习(四)基于项目的node.js开发后端的学习与梳理总结...

    前置: 本系列文章是一个本人边学习边梳理的学习笔记,俗话说好脑袋不如烂笔头,再好的记忆力时间长了也会有细节忘记,本项目选择的前端框架是vue,后端开发使用是node.js,数据库使用的是mongodb ...

  2. 查看npm版本、脚手架vue-cli的版本、项目的vue版本

    1.查看npm版本 在cmd控制台内,输入 "npm -v" 2.查看脚手架vue-cli的版本 vue -V 3.查看当前项目的vue版本 进入项目,找到 package.jso ...

  3. Java基于SpringBoot+vue+nodejs 的宠物销售商城网站elementui

    随着计算机与互联网的普及,人们的网上生活日益丰富,消费方式也在改变.电商成为人们日常消费的一个重要组成部分,所占的比重也越来越高.与此同时宠物也逐渐进入人们的家庭并扮演着越来越重的角色,成为养宠人日常 ...

  4. vue v-html字体大小修改,详解三种方式解决vue中v-html元素中标签样式

    Vue为v-html中标签添加CSS样式 {{news.title}} {{news.datetime}} 返回列表 当我们使用v-html渲染页面,使用下面这种方式去修改样式并没有效果, .con{ ...

  5. 基于JUnit4扩展老项目的UT框架且自动DI

    JUnit4的ClassRunner MockMvc直接对接口发起请求 桥接ibatis的bean Web到App的路由 后记 在公司维护的项目使用的框架很老(内部自研,基于Spring2实现的),单 ...

  6. 计算机毕业设计 SSM+Vue生鲜供应平台 生鲜商城平台 生鲜超市平台Java Vue MySQL数据库 远程调试 代码讲解

  7. vue crud_使用Vue和Deepstream构建实时CRUD应用

    vue crud Vue is the JavaScript UI tool that parades itself as progressive because it is approachable ...

  8. 全图文详细记录安装 免费SSL证书

    前言 开发微信小程序,必须使用 HTTPS 协议进行请求,目前市面上 SSL 证书有很多种类型,大部分是付费的,当前也有免费的证书供我们白嫖,接下来全文详细记录如何配置免费的 SSL 证书. 本文是基 ...

  9. 《基于Unity与SteamVR构建虚拟世界》(Yanlz+Unity+XR+SteamVR+LeapMotion+Neuron+Kinect+IMU+Kickstarter+立钻哥哥++ok++)

    <基于Unity与SteamVR构建虚拟世界> <基于Unity与SteamVR构建虚拟世界> 版本 作者 参与者 完成日期 备注 SteamVR_Unity_V01_1.0 ...

  10. 【三十天精通 Vue 3】 专栏内容介绍

    全网最火Vue3专栏 6月5日开始更新Vue3源码解析 在这个专栏中,我们将带你深入了解 Vue 3 的各个方面.首先,我们将带你了解 Vue 3 的新特性和改进,包括 Composition API ...

最新文章

  1. Sharding Sphere 读写分离的配置
  2. Spring-Cloud中的网关
  3. 十秒解决开发环境跨域问题——取消浏览器同源策略
  4. Duration(2020多校第二场D)
  5. 怎么样批量修改html里的内容,批量修改替换多个Word文档中同一内容的方法
  6. stm32f4有重映射么_STM32管教复用与重映射关系
  7. JQuery使用总结
  8. FISCO BCOS 区块最大最长交易执行时间
  9. 机器学习十大算法都是何方神圣?看完你就懂了
  10. 高音质无线蓝牙耳机推荐,2020游戏低延迟蓝牙耳机分享
  11. come的喂abc是什么梗
  12. JS十六进制转浮点、字符串转为ArrayBuffer、ArrayBuffer转16进制字符串、16进制转10进制、crc校验位、十六进制转中文字符串(小程序、浏览器)、十六进制字符串转ascall字串
  13. linux驱动篇-touchscreen-精简版
  14. 文件如何生成链接插入到微信公众号,如Word、Excel、Pdf等
  15. 一个嘉奖真心做事认真做事的时代
  16. 好心情精神心理科医生:如何与青春期的孩子沟通?
  17. 【原创】C#List线程安全相关解决方案
  18. 中国保险业巨头平安发布“智能城市白皮书”,倡导区块链
  19. 无线互动会议室方案的视频显示系统
  20. 从14次“一轮游”到问鼎大满贯 “灰姑娘”张帅这样逆袭

热门文章

  1. 树莓派Pico上手初体验,Hello world 双核MCU
  2. 运放输入偏置电流方向_运算放大器的输入偏置电流
  3. MyCms 活码二维码(动态二维码)源码版介绍
  4. 如何将两张图片合成一张?
  5. java 编配和弦_为旋律编配和弦(上)
  6. 开源开放|数据地平线通过OpenKG开放全行业因果事理、大规模实时事理等7类常识知识库...
  7. threejs开启对数深度缓存区时、着色器深度混乱
  8. Android天气预报详解
  9. Linux之sed流编辑器
  10. 臻游网络手游[乱弹西游]4月中旬开启首测