vue2-multi:利用Vue.js和Webpack4搭建多页项目

需积分: 10 0 下载量 93 浏览量 更新于2024-12-15 收藏 160KB ZIP 举报
资源摘要信息: "vue2-multi是一个使用Vue.js版本2和webpack4构建的多页应用(MPA)项目。这个项目提供了快速启动和开发的便利,通过一系列脚本命令来管理项目的初始化、开发和发布流程。" 知识点: 1. Vue.js版本2:Vue.js是一个流行的JavaScript框架,用于构建用户界面和单页应用。版本2是Vue.js的一个重要版本,具有许多改进和新特性,如虚拟DOM、组件化结构和响应式数据绑定等。vue2-multi项目正是基于Vue.js版本2开发。 2. webpack4:webpack是一个现代JavaScript应用程序的静态模块打包器(module bundler)。它在应用程序开发中起着核心作用,可以处理项目中所有资源文件的依赖关系,并将它们打包成一个或多个文件。webpack4带来了性能优化和易用性改进,vue2-multi使用webpack4作为其构建系统。 3. 多页应用(MPA):与单页应用(SPA)不同,多页应用有多个独立的页面,每个页面有自己独特的URL,并且每个页面可以加载不同的资源。vue2-multi允许开发者通过配置来管理多个页面,每个页面都可以有独立的组件和路由配置。 4. 安装依赖项:在vue2-multi项目中,开发者需要首先使用npm(Node包管理器)安装项目所需的所有依赖模块。这通常是通过运行npm install命令完成的,该命令会读取项目根目录下的package.json文件,并根据依赖配置下载所需的包。 5. 初始化项目:为了加速开发流程,vue2-multi提供了初始化脚本(npm run init),用于生成项目中使用的dll(动态链接库)文件。dll文件可以预先编译一些不经常更改的资源,以便在后续开发中快速引用。 6. 运行开发:在vue2-multi项目中,开发者可以通过npm start命令启动一个开发服务器。这个命令通常会设置热重载(HMR),使得在开发过程中对代码的更改能够实时反映到浏览器中,而不需要重新加载页面。 7. 建立项目:当开发工作完成后,开发者可以使用npm run pub命令来构建项目的生产版本。这个命令会触发webpack的构建过程,压缩代码、提取公共模块、优化资源加载等,最终生成适用于部署的代码。 8. 页面配置:vue2-multi项目中的页面配置文件通常位于configs/entry.js。这个文件定义了项目中的各个页面以及它们对应的入口点(entry points),帮助webpack理解如何打包每个独立页面的资源。 9. 代理配置:在开发过程中,可能需要对API请求进行代理,以模拟后端服务或解决跨域问题。在vue2-multi项目中,代理配置通常位于configs/config.js文件,开发者可以在该文件中定义代理规则,使得前端能够正确地与后端进行通信。 以上知识点涵盖了vue2-multi项目的基础设施、开发流程、配置管理等方面的内容,为开发者提供了一个全面的多页Vue.js应用开发体验。
2023-06-07 上传

[Vue warn]: Invalid prop: type check failed for prop "data". Expected Array, got Object found in ---> <ElTable> at packages/table/src/table.vue <Index> at src/views/students/index.vue <AppMain> at src/layout/components/AppMain.vue <Layout> at src/layout/index.vue <App> at src/App.vue <Root> warn @ vue.runtime.esm.js?2b0e:619 assertProp @ vue.runtime.esm.js?2b0e:1705 validateProp @ vue.runtime.esm.js?2b0e:1632 updateChildComponent @ vue.runtime.esm.js?2b0e:4141 prepatch @ vue.runtime.esm.js?2b0e:3125 patchVnode @ vue.runtime.esm.js?2b0e:6302 updateChildren @ vue.runtime.esm.js?2b0e:6187 patchVnode @ vue.runtime.esm.js?2b0e:6313 patch @ vue.runtime.esm.js?2b0e:6476 Vue._update @ vue.runtime.esm.js?2b0e:3942 updateComponent @ vue.runtime.esm.js?2b0e:4060 get @ vue.runtime.esm.js?2b0e:4473 run @ vue.runtime.esm.js?2b0e:4548 flushSchedulerQueue @ vue.runtime.esm.js?2b0e:4304 eval @ vue.runtime.esm.js?2b0e:1980 flushCallbacks @ vue.runtime.esm.js?2b0e:1906 vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in callback for watcher "data": "TypeError: data.indexOf is not a function" found in ---> <ElTable> at packages/table/src/table.vue <Index> at src/views/students/index.vue <AppMain> at src/layout/components/AppMain.vue <Layout> at src/layout/index.vue <App> at src/App.vue <Root> warn @ vue.runtime.esm.js?2b0e:619 logError @ vue.runtime.esm.js?2b0e:1884 globalHandleError @ vue.runtime.esm.js?2b0e:1879 handleError @ vue.runtime.esm.js?2b0e:1839 run @ vue.runtime.esm.js?2b0e:4564 flushSchedulerQueue @ vue.runtime.esm.js?2b0e:4304 eval @ vue.runtime.esm.js?2b0e:1980 flushCallbacks @ vue.runtime.esm.js?2b0e:1906 vue.runtime.esm.js?2b0e:1888 TypeError: data.indexOf is not a function at VueComponent.updateCurrentRowData (webpack-internal:///./node_modules/element-ui/lib/element-ui.common.js:10406) at VueComponent.setData (webpack-internal:///./node_modules/element-ui/lib/element-ui.common.js:11086) at VueComponent.module.exports.watcher.commit (webpack-internal:///./node_modules/element-ui/lib/element-ui.common.js:11216) at VueComponent.handler (webpack-internal:///./node_modules/element-ui/lib/element-ui.common.js:13878) at Watcher.run (webpack-internal:///./node_modules/vue/dist/vue.runtime.esm.js:4556) at flushSchedulerQueue (webpack-internal:///./node_modules/vue/dist/vue.runtime.esm.js:4298) at Array.eval (webpack-internal:///./node_modules/vue/dist/vue.runtime.esm.js:1979) at flushCallbacks (webpack-internal:///./node_modules/vue/dist/vue.runtime.esm.js:1905)

2023-06-14 上传