vue笔记(四)vue-cli搭建项目

vue-cli介绍

  vue-cli使用webpack,内置webpack-devserver,并对一下配置可选:

build命令

  

scoped的作用

  在vue的style标签上加上scoped后,会在该vue组件的每个标签上添加随机的属性,并且css用属性选择器。

 样式穿透:待续

 预编译

  vue代码有很多部分,运行系统、编译系统,响应式系统。vue-cli运行的代码,经过打包,没有模板,直接时render函数,由render函数生产vnode。

computed属性

  computed的写法:computed的属性可以写成一个有返回值的函数(getter),也可以写成有标准setter和getter方法的对象;

  computed与method比起来,好处是:将依赖和运行的结果都缓存起来,只要依赖的条件不变,再次执行就不会再次去运行computed里的方法。而method,只要调用一次就执行一次。比如在模板里调用了多次某个方法,每次都会执行该方法。

  computed属性适用于用已知的数据去推算获取新的数据这种情况。不适用计算过程中有异步,当前时间,随机数等情况。因为只要依赖条件不变,这些本该每次执行过程中都会变化的情况,会造成执行结果还是利用缓存

  从computed的含义就可以知道,计算的是数据。method是方法,是操作过程。

class绑定

  可以是字符串,数组,对象

 引入文件

  在模块中引入其他文件的方法:

    script标签里用commonjs或则es6的import语法,如果想从src目录出发,则可以使用“@/xx”

    style标签中引入文件,使用@的话必须在前面加~,即import '~@/xx';

  原因:1. script标签中,webpack的配置决定的:

    通过命令:vue inspect > output.js可以在工程根目录导出一个文件,写了vue-cli对webpack的默认配置    

resolve: {
    alias: { 
      '@': 'D:\my_lesson\lesson_vue\lesson4_cli_demo\my-site\src',
      vue$: 'vue/dist/vue.runtime.esm.js'
    },
    extensions: [//代表不需要输入的后缀名
      '.mjs',
      '.js',
      '.jsx',
      '.vue',
      '.json',
      '.wasm'
    ],

    2.style标签中,~与style-loader有关好像(https://github.com/webpack-contrib/stylus-loader

       

v-show和v-if区别:

  vue的渲染效率取决于两个因素:虚拟dom节点的数量和虚拟dom树的稳定性(加快两颗dom树的对比速度)。

  v-if会根据条件决定是否生成vnode。在条件为假时,会减少vnode节点个数,加快渲染效率。

  v-show会在一开始,不管条件真假都生产vnode,在条件变化时,通过display来调节样式是否渲染。非常稳定。

 

原文地址:https://www.cnblogs.com/dangdanghepingping/p/14667455.html