美文网首页
vue开发填坑

vue开发填坑

作者: 任无名F | 来源:发表于2017-07-19 18:13 被阅读0次
1. 如何监听url中参数的变化?

正常情况下,url里的参数变化之后,页面是不会更新的。因为vue视为url没有变化,也没有触发任何生命周期的钩子函数。
解决方案:通过监听$route的变化来实现

watch: {
    "$route": {
      handler: function(val, oldVal) {
        // do sth.
      }
    }
}
2. 在vue中监听DOM事件

不要使用DOM0级事件的形式,因为0级事件会互相覆盖

// 不推荐的写法
element.onclick = function() {
    // do sth.
};

使用DOM2级事件则无问题

element.onEventListener("click", function() {
    // do sth.
});
3. 兼容linux / windows系统的启动命令

当使用同一webpack配置打包两个项目时,启动命令需要添加一个环境变量的参数,用以区分两个项目的不同路径不同入口文件等,但是linux环境与windows环境下,给命令添加环境变量参数的写法有所不同,如下:

// linux
"dev": "PROJECT=user webpack-dev-server --config webpack.dev.config.js --port 8080",
// windows
"dev": "set PROJECT=user&&webpack-dev-server --config webpack.dev.config.js --port 8080"

注意:user与&&之间不能有空格,否则环境变量PROJECT会变成
user+空格。


我是自我反省的分割线,上面说的很对,但是也很蠢,其实更好的方式是使用cross-env

// 安装cross-env
npm install cross-env --save-dev

// 使用cross-env
"dev": "cross-env PROJECT=user webpack-dev-server --config webpack.dev.config.js --port 8080"
4. vue的一些小知识点
  • 模板表达式中只能访问一个全局变量的白名单,比如Math、Date等
  • 条件渲染 (v-if) 在切换时并不会完全重新渲染 DOM,比如两个 input
    切换则输入值会被保留,可以为切换的元素添加不同的key来强制重新渲染
  • v-show 无法使用 template 包装元素
  • v-for 可以遍历对象,(value, key, index) in obj,分别代表值、键、索引
  • v-on 的修饰符是有顺序的,@click.prevent.self 会阻止所有的点击,而 @click.self.prevent 只会阻止元素上的点击
  • 动态组件可以使用 keep-alive,保留在内存
<keep-alive>
  <component :is="currentView">
    <!-- 非活动组件将被缓存! -->
  </component>
</keep-alive>
  • 一个具有 name 属性的组件可以递归调用自身
name: 'stack-overflow',
template: '<div><stack-overflow></stack-overflow></div>'
  • 使用 v-once,让静态资源模板只渲染一次
5. vue/react路由为history模式的nginx配置
location / {
  root /path/to/the/dist;
  try_files $uri $uri/ /index.html;
}

相关文章

  • vue开发填坑

    1. 如何监听url中参数的变化? 正常情况下,url里的参数变化之后,页面是不会更新的。因为vue视为url没有...

  • iOS端IM开发从入门到填坑

    iOS端IM开发从入门到填坑 iOS端IM开发从入门到填坑

  • 关于新版 vue-awesome-swiper

    vue引入新版 vue-awesome-swiper填坑 - CodingHot - 博客园 GitHub - s...

  • Vue开发新手遇坑

    Vue开发新手遇坑总结自己开发vue遇到的坑。 a里面不会传href解决:href签名加个v-bind: vue打...

  • vue3.0开发总结-填坑

    1.vue3.0配置第三方插件不打包 配置第三方插件不打包采用cdn引入是比较常见的减小包体积的办法,因为第三方插...

  • vue-cli构建vue项目-前端完美开发环境搭建

    参考资料: Vue2.0 新手完全填坑攻略—从环境搭建到发布 vue-cli构建vue项目Webpack 入门...

  • Vue 填坑记

    1. You may have an infinite update loop in a component re...

  • vue填坑笔记

    这周开始学习vue,用的vue-cli脚手架做简单的登录页面。但在安装和使用时,还是遇到了一些坑,犯了不少低级错误...

  • Vue填坑记录

    记录使用Vue 2.6.11过程中遇到的一些问题及其解决办法 vue和vue-template-compile的版...

  • Vue填坑之路

    问题1:TypeError: Cannot read property 'minify' of undefined

网友评论

      本文标题:vue开发填坑

      本文链接:https://www.haomeiwen.com/subject/ghfrkxtx.html