Vue 项目初步总结(在项目中遇到的问题以及解决办法)

一. 项目搭建

传送门:https://blog.csdn.net/u013144287/article/details/78659647;

注意点:建议不要使用ESLint 后面选No 就ok  大神跳过此处,否则在项目中只要编码格式有问题就会一直拨错!


二.编辑器选择


  1、推荐使用Visual Studio Code工具打开testproject文件夹即可进行开发。

(1)(打开终端快捷键 control+~)在终端里面输入npm install命令安装依赖包, npm install 执行可以进行vue已经vue的插件安装,在第三步的时 候,已经初始化了项目,并且在 package.json 里面已经有相关配置,所以在这里可以直接安装;

(2)终端执行命令npm run dev 运行,然后览器输入localhost://8080即可看到vue初始界面

三.辅助工具引入(jq)

补充:使用vue 框架时尽可能的不要使用jq,但是有些地方确实需要使用jq的话下面是在vue中引入jq的方法

1:首先安装jquery

npm install jquery --save

2:在webpack.base.conf.js里加入

var webpack = require("webpack")

3:在module.exports的最后加入

plugins: [

new webpack.optimize.CommonsChunkPlugin('common.js'),

new webpack.ProvidePlugin({

    jQuery: "jquery",

    $: "jquery"

})

]

4:在main.js中引入

import $ from 'jquery'

5.最后 npm run dev就可以了

四.项目开始

(1).vue项目中引入图片的三种方式

首先给图片地址绑定变量

在script中设置变量

//方法1.直接将图片引入为模块

require imgUrl from "../assets/test.png"

//方法2.将imgUrl放在数据里

    data(){

        return {

            imgUrl:require("../assets/test.png")

        }

}

    //方法3.在生命周期函数中设置

    data(){

        return {

imgUrl:""

        }

    }

    created(){

this.imgUrl = require("@/"+urlTemp)

}

(2)如何在项目中封装自己的方法以便各个组件调用

传送门:https://www.cnblogs.com/aimiss/p/7396986.html

(3)补充一个小公举(json查看工具)

传送门:https://www.json.cn/

(4)axios的使用(跨域必备)


    基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中使用

功能特性

在浏览器中发送XMLHttpRequests请求

在 node.js 中发送http请求

支持PromiseAPI

拦截请求和响应

转换请求和响应数据

自动转换 JSON 数据

客户端支持保护安全免受XSRF攻击

安装

使用 bower:

$ bowerinstallaxios

使用 npm:

$ npminstallaxios

例子

axios.post('/user',{

firstName:'Fred',

lastName:'Flintstone'

})

.then(function (response) {

console.log(response);

})

.catch(function (response) {

console.log(response);

});

如何解决跨域?

传送门:https://www.jianshu.com/p/e36956dc78b8;

五.项目中遇到的一些问题

(1)   不同组件对应这个不同的页面,样式自然是写在当前组件中的style中,但是此时如何我们不做相应的处理两个组建中的样式便会项目影响。(简称为样式污染)

一、污染是如何产生的?

得益于 Vue-loader,在 Vue 中可以使用类似于 Web Component 的组件化写法,  ,在大多数情况下,我们希望组件间定义的样式是相互隔离的,在 Weex 当中的确如此,组件天生隔离,可是在 Vue 当中,运行的载体还是浏览器,所有的样式类还是会通过 style 标签插入头部,影响全局,交叉污染

二、增加 Scoped 标识

依然是 Vue-loader,通过为组件中的 style 标签增加一个 scoped 标识,Vue-loader 在编译的过程中会为组件每一个元素节点增加 scopeId 作为属性,同时为所有的样式类加上属性选择器 scopeId,从而达到隔离的效果。

传送门:https://www.jb51.net/article/122535.htm

(2)在vue项目中关于定时器的使用(很恶心)

假如,我们在A组建中声明了一个定时器进行倒计时此时 我们在定时器中一直打印时间戳,此时我们通过路由跳转到下一个组件页面,按照正常理论来说,A组件在跳转后整个组件就会被销毁,到达B组件时A组件已经没有了。

但是在我们有定时器的情况下 此时跳转过后 定时器依然会存在。所以我们要在页面销毁时候将当前页面的定时器clear掉。

(3)还是一个关于定时器的问题,在移动端项目中我从后端拿来时间戳还有系统时间进行比较然后做出倒计时,在网页中显示正常,但在移动端会出现NAN。

解决:

格式转换

服务器给的格式是2016-6-16 10:50:00 正则替换成2016/6/16 10:50:00即可;

例如


var time = '2016-6-16 10:50:00'

var times = time.replace(/-/g,"/"); //2016/6/16 10:50:00

完美解决。

(4)又是定时器问题,在项目中,我们将有定时器的页面切出到后台(不是关闭进程),过一段时间后页面的倒计时就会出现混乱。

原因:因为当我们切出到任务管理器后台时,此时在客户端中的浏览器里面,浏览器就会终止定时器因为消耗性能,当我们返回的时候此时倒计时才会恢复正常。

解决:h5有一个监听浏览器页面是否隐藏的事件 visibilitychange 两种状态 hidden和visity hidden时候页面切出此时我们要将定时器销毁,visity时候再次恢复定时器。

(5)如何刷新当前组件页面?

解决 this.$router.push(0)

(6)项目完成后 通过webPack打包的页面在安卓4.0 ios9.1出现白页面,也就是而组建无法被创建。

原因:因为低版本安卓不支持es6 

(1)安装依赖包 

> cnpm install --save-dev babel-polyfill 或者 > npm install --save-dev babel-polyfill

(2)webpack配置修改 

/* 添加 babel-polyfill */ 

entry: { 

app: ["babel-polyfill", "./src/main.js"] 

}, 

但是:我的项目上面的操作都进行了,也就是对es6进行了转化但是失败了。所以我就白有关es6的我写的东西都改掉了。结果就好了。

六.辅助工具-----真机调试(非常好用)

传送门:https://blog.csdn.net/qq_16559905/article/details/60755174



总结:初入前端,继续踩坑。


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,294评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,493评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,790评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,595评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,718评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,906评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,053评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,797评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,250评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,570评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,711评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,388评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,018评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,796评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,023评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,461评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,595评论 2 350

推荐阅读更多精彩内容