• Vue2学习重点总结(Vue配置和使用+Vue脚手架配置代理+Vuex+Router)


    V2脚手架文件结构

    1. my-vue-project/
    2. ├── build/ # 构建相关的配置文件,一般情况下你不需要关心这个目录
    3. ├── config/ # 项目的配置文件,例如开发环境和生产环境的配置
    4. ├── node_modules/ # 项目依赖的第三方模块
    5. ├── src/ # 源代码目录
    6. │ ├── assets/ # 静态资源文件,如图片、字体等
    7. │ ├── components/ # Vue组件文件
    8. │ ├── router/ # Vue Router 路由配置文件
    9. │ ├── store/ # Vuex 状态管理文件
    10. │ ├── views/ # 页面组件文件
    11. │ ├── App.vue # 根组件
    12. │ └── main.js # 项目入口文件
    13. ├── static/ # 静态资源文件,会被复制到输出目录(如dist)
    14. ├── test/ # 测试文件
    15. ├── .babelrc # Babel配置文件,用于将ES6+代码转换成ES5
    16. ├── .editorconfig # 编辑器配置文件,用于统一不同编辑器的格式
    17. ├── .eslintignore # ESLint忽略配置文件
    18. ├── .eslintrc.js # ESLint配置文件,用于代码规范检查
    19. ├── .gitignore # Git忽略配置文件,指定不需要跟踪的文件和目录
    20. ├── index.html # 项目的HTML入口文件
    21. ├── package.json # 项目的依赖配置和脚本命令
    22. └── README.md # 项目的说明文档

    关于不同版本的Vue

    1.vue.js与vue.runtime.xxx.js的区别:

         1.vue.js是完整版的Vue,包含:核心功能 + 模板解析器。

         2.vue.runtime.xxx.js是运行版的Vue,只包含:核心功能;没有模板解析器。

    2.因为vue.runtime.xxx.js没有模板解析器,所以不能使用template这个配置项,需要使用render函数接收到的createElement函数去指定具体内容。

    vue.config.js配置文件

    1. 用vue inspect > output.js可以查看到Vue脚手架的默认配置。
    2. 使用vue.config.js可以对脚手架进行个性化定制,详情见:Vue CLI

    ref属性


    1. 被用来给元素或子组件注册引用信息(id的替代者)
    2. 应用在html标签上获取的是真实DOM元素,应用在组件标签上是组件实例对象(vc)
    3. 使用方式:

                    a.打标识:

    .....

                    b.获取:this.$refs.xxx

    props配置项

    1. 功能:让组件接收外部传过来的数据
    2. 传递数据:
    3. 接收数据:

                    a.第一种方式(只接收):props:['name']

                    b.第二种方式(限制类型):props:{name:String}

                    c.第三种方式(限制类型、限制必要性、指定默认值):

    1. props:{
    2. name:{
    3. type:String, //类型
    4. required:true, //必要性
    5. default:'老王' //默认值
    6. }
    7. }

    备注:props是只读的,Vue底层会监测你对props的修改,如果进行了修改,就会发出警告,若业务需求确实需要修改,那么请复制props的内容到data中一份,然后去修改data中的数据。

    mixin(混入)

    1. 功能:可以把多个组件共用的配置提取成一个混入对象
    2. 使用方式:第一步定义混合:
    1. {
    2. data(){....},
    3. methods:{....}
    4. ....
    5. }

    第二步使用混入:

    全局混入:Vue.mixin(xxx)

    局部混入:mixins:['xxx']

    插件

    1. 功能:用于增强Vue
    2. 本质:包含install方法的一个对象,install的第一个参数是Vue,第二个以后的参数是插件使用者传递的数据。
    3. 定义插件:
    1. 对象.install = function (Vue, options) {
    2. // 1. 添加全局过滤器
    3. Vue.filter(....)
    4. // 2. 添加全局指令
    5. Vue.directive(....)
    6. // 3. 配置全局混入(合)
    7. Vue.mixin(....)
    8. // 4. 添加实例方法
    9. Vue.prototype.$myMethod = function () {...}
    10. Vue.prototype.$myProperty = xxxx
    11. }

       4.使用插件:Vue.use()

    scoped样式

    1. 作用:让样式在局部生效,防止冲突。
    2. 写法: