# vue2代码+资料 **Repository Path**: zhongyiwentao/vue2-code-information ## Basic Information - **Project Name**: vue2代码+资料 - **Description**: vue2代码+资料 ;尚硅谷禹神前端 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-22 - **Last Updated**: 2024-01-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 笔记 # 模板项目的结构 > ├── node_modules ├── public ├── favicon.ico: 页签图标 ├── index.html: 主页面 ├── src ├── assets: 存放静态资源 ├── logo.png ├── component: 存放组件 ├── HelloWorld.vue ├── App.vue: 汇总所有组件 ├── main.js: 入口文件 ├── .gitignore: git 版本管制忽略的配置 ├── babel.config.js: babel 的配置文件 ├── package.json: 应用包配置文件 ├── README.md: 应用描述文件 ├── package-lock.json:包版本控制文件 # 关于不同版本的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函数去指定具体内容 > >```js >new Vue({ > el:'#app', > render:h => h(App) >}) >``` # vue.config.js配置文件 > 使用vue inspect > output.js 可以查看Vue脚手架的默认配置(只是查看) > 使用vue.config.js可以对脚手架进行个性化定制,详情见 https://cli.vuejs.org/zh/config/ # ref属性 > 1.被用来给元素或者子组件注册引用信息(id的替代者) > 2.应用在html标签上获取的是真实DOM元素,应用在组件标签上是组件实例对象 vc > 3.使用方法: 标识:

... .

或者 获取: this.$refs.xxx # 配置项props >功能:让组件接收外部传过来的数据 > (1)传递数据: > (2)接收数据: 第一种方式(只接收): props:['name','age'] ```js 第二种方式(限制类型): props:{ age:Number, name:String } 第三种方式(限制类型、限制必要性、指定默认值) props:{ name:{ type:String, //类型 required:true, //必要性 default: '老昂' //默认值 } } 备注:props是只读的,Vue底层会监测你对props的修改,如果进行了修改,就会发出警告, 若业务需求确实需要修改,那么请赋值props的内容到data中一份,然后去修改data中的数据 ``` # minxin(混入) > 功能:可以把多个组件共用的配置提取成一个混入对象 > 使用方式: > 第一步定义混合 xxx.js 例如 { data() { > }, > methods:{....} > } > 第二步使用混合,例如: > (1)全局混入:Vue.mixin(xxx) > (2)局部混入 minxins:['xxx'] > 注意: 混入是进行混合在一起,不进行覆盖 如果相同配置以vm或vc为准 一个特殊 mounted() 它不以谁为准 直接混入 并且在vm或vc的mounted内容上面执行 # 插件 功能: 用于增强Vue 本质:包含install方法的一个对象,install的第一个参数是Vue,第二个以后的参数是插件使用者传递的数据(可变数组) 定义插件: 1.定义一个js 2.编写install方法 ```js install(Vue,options) { //1.添加全局过滤器 Vue.filter(....) //2.添加全局指定 Vue.directive(....) //3.配置全局混入 Vue.mixin(....) //4.添加实例方法 Vue.prototype.xxx=function() {....} } ``` 使用插件:Vue.use() # scoped样式 ```js 作用:让样式在局部生效,防止冲突 防止不同组件中style的名字定义相同发生冲突问题 写法: