Vue目前的的开发模式主要有两种:
1.直接页面级的开发,script直接引入Vue
2.工程性开发,webpack+loader或者直接使用脚手架工具Vue-cli,里面的文件都配置好了

webpack可以进行配置,配置多文件入口,进行多页面开发

第二种Vue开发,结合webpack打包完文件会很大,怎么解决这个问题?
1.webpack代码拆分:code-spliting
2.提取公共(如提取css,js)
3.预渲染:使用prerender-spa-plugin插件
4.后台————开启压缩,gzip (会很有用)
5.异步加载组件:require.ensure

Vue常见错误解决方法:
1.[Vue-warn]: Missing required prop: "to"  (found in component <router-link>)
这个错误是<router-link>少了个to或者是写错 ,正确写法为:<router-link to="/home">
并且路由在做字符串拼接的时候,to要作为一个属性绑定 <router-link :to="'/home/'+item.id">

2.端口冲突错误:需要改端口
  当然现在vue2.0中的webpack 已经自己会根据你的端口号进行改正,从8080往后面进行递增,
  不会发生端口号冲突的情况,在vue1.0中会经常出现

3.[Vue-warn]:Unknown custom element: <router-link> - did you register the component correctiy?
错误1:引进来的vue-router没有use()
  import Vue from 'vue'
  import VueRouter from 'vue-router'
  Vue.use(VueRouter);
错误2:在生成路由实例之后,没有将路由挂到我们的Vue实例上面
const router=new VueRouter({
  mode:'history',//切换路径模式,变成history模式,不然路径为/#/home
  scrollBehavior:()=>({ // 滚动条滚动的行为,不加这个默认就会记忆原来滚动条的位置
    y:0
  }),
  // 注意这里的名称
  routes
});
new Vue({
  /* 4.最后挂到vue上 */
  router,
  el: '#app',
  render: h => h(App)
});

4.Uncaught TypeError: _vuex2.default.store is not a constructor
  这个报错的是_vuex2.default.store 不是一个构造函数
  因为在我们用vuex的时候需要将用到的actions,mutations模块最终导出,
  在导出的时候new Vuex.Store中的Store小写了,这里的一定要大写,
  就相当于我们在使用构造函数(类)的时候首字母要大写

  import mutations from './mutations.js'
  import actions from './actions.js'

  export default new Vuex.Store({ //Vue.Stroe()首字母大写
    modules:{ //这里注意mutations导出的是一个模块
      mutations
    },
      actions
    });

5. Moudel not found:Error:Can't resolve "style" in 'D:\vue-demo'
  在vue1.0中,在webpack.config.js中配置css文件时
  module:{
    loaders:[
      {
        test:/\.css$/,
        loader:'style!css'
      }
    ]
  }
在vue2.0中,在webpack.config.js中配置css文件时,必须要写全,不能和vue1.0一样简写
  module:{
    rules:[ //这里改成了rules
      {
        test:/\.css$/,
        loader:'style-loader!css-loader' //这里必须要写全,不能和vue1.0一样简写
      }
    ]
  }

6.组件之间的通信从1.0过渡到2.0时引发的错误:
vue1.0实现父子组件的通信 -->通过props属性-->并且子组件可以更改父组件的数据 通过sync同步
  当在vue2.0里面不允许直接给父级数据做更改,并且把这个方法.sync去掉了,
  当子组件再试图更改父组件的数据时,就会报错。
解决方法:
  1.$emit()——单一事件管理
    经常遇到的问题是找不到$emit()或$on(),这时需要单独准备一个文件Store.js
    在文件里面需要:var oEvent =new Vue();
    这个这个文件里的数据一定要导出去才可以使用:export default oEvent

  2.对象之间的引用:(推荐使用)
    vue1.0传数据:msg:'welcome' -->传给子级
    vue2.0直接将数据定义成对象json的形式,这样传给子级的数据是对象的属性,即msg.title
    这样子级修改父级的数据,修改的也是这个对象的一个属性msg.title
      msg:{
        title:'welcome'
      }
      msg.title

7.用vuex用来管理组件状态:(增加/减少,显示/隐藏)

8.axios目前不可以use,因为axios里面没有install这个方法
使用axios的时候,可以这样来使用:
1.将axios导入文件
  import axios from 'axios'
2.将axios放入到Vue实例上面,这样在其他组件中,可以直接通过this.$https.get/post使用
  在main.js中写:Vue.prototype.$http = axios
  其他组件可以直接使用:
  this.$http.get('data.txt').then((res)=>{
    console.log(res.data);
  }).catch((err)=>{
    console.log(err);
  });

10) element.ui表头点击事件
  使用element.ui之后 @click="" 无法对表头等元素添加点击事件,正确的写法应该是@click.native=""

11)webpack2.0 插件的配置需要放到 plugins里面进行配置,不可放到rules里面进行配置

vue使用过程常见的一些问题的更多相关文章

  1. Vue2.0总结———vue使用过程常见的一些问题

    Vue目前的的开发模式主要有两种:1.直接页面级的开发,script直接引入Vue2.工程性开发,webpack+loader或者直接使用脚手架工具Vue-cli,里面的文件都配置好了 webpack ...

  2. Vue初始化过程

    用vue也有一两年了,始终对vue一知半解,不怎么了解内部的执行过程,最近在看vue源码,还是不少收获的,其中不乏浏览器事件轮询机制.闭包.设计模式等,还是非常值得一读.本篇简要记录下vue的初始化过 ...

  3. Vue 源码解读(2)—— Vue 初始化过程

    当学习成为了习惯,知识也就变成了常识. 感谢各位的 点赞.收藏和评论. 新视频和文章会第一时间在微信公众号发送,欢迎关注:李永宁lyn 文章已收录到 github 仓库 liyongning/blog ...

  4. VUE 与其他常见前端框架对比

    对比其他框架(转官方文档) 这个页面无疑是最难编写的,但我们认为它也是非常重要的.或许你曾遇到了一些问题并且已经用其他的框架解决了.你来这里的目的是看看 Vue 是否有更好的解决方案.这也是我们在此想 ...

  5. Vue使用过程中常见问题

    目录 一.vue监听不到state数组/json对象内的元素的值的变化,要手动通知触发 二.vue用splice删除多维数组元素导致视图更新失败情况 三.vue项目如何部署到php或者java环境的服 ...

  6. Vue 几种常见开局方式

    vue的开局方式五花八门,这里列几种常见的. 我们先建立一个app.vue来当入口文件,即所有页面都会以这个组件为模板. <template> <div id="app&q ...

  7. Vue发布过程中遇到坑,以及webpack打包优化

    前言 这段时间,本人自己做了一个vue画面部署到自己的服务器上,发现运行速度慢的的惊人,虽然服务器很渣(本人没什么钱,只能租最差的服务器,主要是给自己学习用的),但是这样开发出来的网站简直不能用,所以 ...

  8. Vue优化:常见会导致内存泄漏问题及优化

    1. 监听在window/body等事件没有解绑2. 绑在EventBus的事件没有解绑3. 模块形成的闭包内部变量使用完后没有置成null4. 使用第三方库创建,没有调用正确的销毁函数5 . ech ...

  9. vue实例化过程

    我们在用vue进行开发项目时,是否存在疑惑,new Vue(xxx)的过程中,究竟发生了什么?定义的数据,是如何绑定到视图上的?本篇主要介绍在实例化vue时,主要做了哪些事,文章比较长,主要篇幅内容为 ...

随机推荐

  1. PHP 实现了一种代码复用的方法,称为 trait

    自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 trait. Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制.Trait 为了减少单继承语言的限制,使开发人员能 ...

  2. [译] SystemTap

    SystemTap 什么是system Tap ? SystemTap 提供环境用来获得更多关于内核几乎所有组件的信息,用以被进一步分析.SystemTap也可以被当作一种工具,为用户研究和监控内核详 ...

  3. MFC简单的橡皮筋程序

    void CMainWindow::OnLButtonDown(UINT nFlags,CPoint point) { //以下三个是在CMainWindow中定义 m_ptFrom=point; m ...

  4. vsftpd 被动模式与主动模式

    vsftpd 被动模式与主动模式 VSFTP文件与目录/usr/sbin/vsftp vsftp的主程序/etc/rc.d/init.d/vsftp vsftp的启动脚本/etc/vsftpd/vsf ...

  5. javascript——对象的概念——函数 3 (使用技巧)

    1.回调函数:将函数A传给函数B,由函数B来执行A,则称A为回调函数. 例1: 例2 function addone(a){;}; //定义一个回调函数 function mulitiply(a,b, ...

  6. 10-31SQLserver基础--聚合函数、分组

    在查询语句时,也存在一些方法和属性,而这些方法在查询时统称为函数,便利查询时使用 聚合函数(都是针对字段操作) 聚合是缩减一系列输入值的表达式,例如缩减为单个值. Select*from biao 1 ...

  7. doker 笔记(1) 架构

    Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器 - Docker daemon Docker 镜像 - Image Registry Docker 容器 ...

  8. 部署和调优 1.6 vsftp部署和优化-2

    映射个虚拟用户 创建个用户,不让他登录 useradd virftp -s /sbin/nologin 创建存放虚拟用户用户和密码的文件 vim /etc/vsftpd/vsftpd_login 写入 ...

  9. java.lang.OutOfMemoryError: Java heap space异常

    最近使用Tomcat跑项目时,其他项目可以正常运行,但有一个项目报java.lang.OutOfMemoryError: Java heap space异常,查了资料后,找到一个处理我所遇见异常的解决 ...

  10. 从文件中读取yuv和h264数据

    1.从文件中读取h264数据 参考ffmpeg avc.c写的从文件中一帧帧读取h.264数据的demo #include <stdio.h> #include <stdlib.h& ...