最近在学习Vue,今天正好写个学习笔记,把以前遇到的错误给总结一下。
Vue目前的的开发模式主要有两种:
1。直接页面级的开发、脚本直接引入Vue
2。工程性开发,webpack +装载机或者直接使用脚手架工具Vue-cli,里面的文件都配置好了
webpack可以进行配置,配置多文件入口,进行多页面开发
1。webpack代码拆分:code-spliting
2。提取公共(如提取css, js)
3。预渲染:使用prerender-spa-plugin插件
4。后台- - - - -开启压缩,gzip(会很有用)
5。异步加载组件:require.ensure
<强> Vue常见错误解决方法:强>
1。[Vue-warn]:缺少所需道具:“”,(发现组件& lt; router-link>)
这个错误是& lt; router-link>少了个,或者是写错,正确写法为:& lt; router-link=?home”在
并且路由在做字符串拼接的时候,为了要作为一个属性绑定& lt; router-link:=?home/+ item.id”在
2。端口冲突错误:需要改端口
当然现在vue2.0中的webpack已经自己会根据你的端口号进行改正,从8080年往后面进行递增,不会发生端口号冲突的情况,在vue1.0中会经常出现
3。[Vue-warn]:未知的定制元素:& lt; router-link>——你注册组件correctiy& # 63;
错误1:引进来的vue-router没有使用()
从“Vue”进口Vue 从“vue-router”进口VueRouter Vue.use (VueRouter);
错误2:在生成路由实例之后,没有将路由挂到我们的Vue实例上面
const路由器=new VueRouter ({ 模式:'历史',//切换路径模式,变成历史模式,不然路径为/#/home scrollBehavior:()=祝辞({//滚动条滚动的行为,不加这个默认就会记忆原来滚动条的位置 y: 0 }),//注意这里的名称 路线 }); 新Vue ({/* 4。最后挂到vue上*/路由器, 埃尔:“#应用”, 呈现:h=比;h(应用) }); >之前4。未捕获TypeError: _vuex2.default.store不是构造函数
这个报错的是_vuex2.default.store不是一个构造函数,因为在我们用vuex的时候需要将用到的动作,突变模块最终导出,在导出的时候新Vuex.Store中的小商店写了,这里的一定要大写,就相当于我们在使用构造函数(类)的时候首字母要大写
从“进口突变。/mutations.js ' 从“进口行为。/actions.js” 出口新Vuex违约。存储({//Vue.Stroe()首字母大写 模块:{//这里注意突变导出的是一个模块 突变 }, 行动 }); >之前5。Moudel了错误:无法解决的“风格”“D: \ vue-demo”
在vue1.0中,在webpack.config。js中配置css文件时
模块:{ 加载器:( { 测试:/\ . css/美元, 装载机:“css风格!” } ] }在vue2.0中,在webpack.config.js中配置css文件时,必须要写全,不能和vue1.0一样简写
模块:{ 规则:[//这里改成了规则 { 测试:/\ . css/美元, 装载机:“style-loader !css-loader '//这里必须要写全,不能和vue1.0一样简写 } ] }6。组件之间的通信从1.0过渡到2.0时引发的错误:
vue1.0实现父子组件的通信——在通过道具属性——祝辞,并且子组件可以更改父组件的数据通过同步同步
当在vue2.0里面不允许直接给父级数据做更改,并且把这个方法。去同步掉了,
当子组件再试图更改父组件的数据时,就会报错只
解决方法:
1。发出()美元——单一事件管理
经常遇到的问题是找不到排放()或(),美元这时需要单独准备一个文件商店。js
在文件里面需要:var oEvent=new Vue ();
这个这个文件里的数据一定要导出去才可以使用:出口默认oEvent
2。对象之间的引用:(推荐使用)
vue1.0传数据:味精:“欢迎”,在传给子级
Vue2.0使用过程常见的一些问题总结学习