# vue3_basic_92 **Repository Path**: monsterchuchu/vue3_basic_92 ## Basic Information - **Project Name**: vue3_basic_92 - **Description**: vue3基础知识点 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2023-07-31 - **Last Updated**: 2023-07-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## vue2的ui组件库 - element-ui --- pc,web端 - vant-ui - 移动端 - uni-view u-uni 小程序的组件库 - vue3 - element-plus,ant-design-vue --- pc,web端 - vant-ui ---- 移动端 ## vue2创建项目 - vue-cli --- 底层是webpack - vite ## vite 与 webpack 的区别 --- 面试题 - webpack是一个模块打包器,在编译过程中,会将所有模块打包为一个bundle.js文件,然后再运行这个文件,更新速度会随着代码体积增加越来越慢 - vite 是一个基于浏览器原生 ESModule imports 的开发服务器,在开发模式下,没有打包的步骤,它利用了浏览器的ES Module特性,只有在真正需要时才编译文件,所以编译速度快,不受项目体积影响 - 在生产模式下,vite使用Rollup进行打包,提供更好的tree-shaking,代码压缩和性能优化 - **开发效率:** webpack的热更新是全量更新,即使修改一个小文件,也会重新编译整个应用,这在大型应用中可能会导致编译速度变慢; vite的热更新是增量更新,只更新修改的文件,所以即使在大型应用中也能保持极快的编译速度 - **目前企业使用:**webpack有着成熟的插件生态,扩展性非常强。 而vite才刚刚起步,生态不行。 所以webpack适合于大型、复杂的项目。 vite凭更适合于中小型项目开发 ## type module含义 1. `type`字段的产生用于定义`package.json`文件和该文件所在目录根目录中`.js`文件和无拓展名文件的处理方式。值为`'moduel'`则当作es模块处理;值为`'commonjs'`则被当作commonJs模块处理 2. 目前node默认的是如果`pacakage.json`没有定义`type`字段,则按照commonJs规范处理 3. node官方建议包的开发者明确指定`package.json`中`type`字段的值 4. 无论`package.json`中的`type`字段为何值,`.mjs`的文件都按照es模块来处理,`.cjs`的文件都按照commonJs模块来处理 **在script标签中写js代码,或者使用src引入js文件时,默认不能使用形式,即不能使用import导入文件,但是我们可以再script标签上加上type=module属性来改变方式** ```javascript //module.js export default function test(){ return 'test...' } ``` ```html // index.html