标签 VUE 下的文章

问题

本地vue-cli启动了一个项目只能通过localhost:8080访问到,同一局域网下其他的手机和电脑并不能通过ip地址访问调试。

原因

vue-cli项目是通过命令行一键生成的,配置文件中默认生成的是本地调试模式,默认访问地址是localhost:端口号

解决

查看config文件夹下的 index.js,将dev中将host重新定义为:0.0.0.0即可。

表单修饰符

.lazy

在默认情况下,v-model 在每次 input 事件触发后将输入框的值与数据进行同步。你可以添加 lazy 修饰符,从而转变为使用 change 事件进行同步:

<!-- 在“change”时而非“input”时更新 -->
<input v-model.lazy="msg" >

- 阅读剩余部分 -

甲方项目中有一个比较奇葩的需求,步骤条是可以点击跳转的,但是看了下饿了么组件,人家根本就没有点击事件,搜了好多,也没有解决办法,只能自己去搞了……

记得以前在用饿了么input输入框组件,也需要自己加一些原生的事件,Vue是有自定义事件,于是就在el-step上加了一个v-on:click.native,居然可以触发,问题顺利解决,看来以后如果要在组件上面加一个自定义事件,还是得用Vue的自定义事件来做了。

在做甲方项目的时候,遇到了一个比较正常的需求,就是点击新建的时候需要弹出一个弹窗,默认的去激活第一个输入框的焦点。这个需求看起来再正常不过的了,以前在写的时候也没特别注意(用jqeruy用习惯了),但是这次缺卡壳了。

- 阅读剩余部分 -

当打包构建应用时,Javascript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了。

- 阅读剩余部分 -

关于组件通信我相信小伙伴们肯定也都很熟悉,就不多说了,对组件还不熟悉的可以查看这里

官方推荐的状态管理方案是 Vuex。不过如果项目不是很大,状态管理也没有很复杂的话,使用 Vuex 有种杀鸡用牛刀的感觉,当然,这也是要根据自己的需求来的,只是建议。

官方也推荐了一种非父子组件的通信,在简单的场景下,可以使用一个空的 Vue 实例作为事件总线也就是下面要说的 Bus

我习惯把Bus定义在全局,这样使用起来的时候就不用再去单独引用。

- 阅读剩余部分 -

这算是一个比较变态的需求了,最近给甲方做一个项目,有两级导航,但是一级导航是空的,也就是说一级导航是没有页面,所以也没办法去配置路由,但是在点击一级导航下的二级导航,需要把对应的一级导航高亮出来!如果不用VueRouter来做,应该效果上可以实现,但是如果用户手动的在浏览器上输入地址,没有路由的配合,导航是不会高亮的!

- 阅读剩余部分 -