Vue_day12

本文介绍了如何使用Vue.js实现电影修改业务,包括从列表跳转到修改页面,接收ID参数回填数据,以及提交修改请求。同时,详细讲解了如何构建电影院添加功能,包括配置路由、创建表单页面、嵌入高德地图API,以及使用AMapLoader加载地图库,实现地图选点功能。

Vue DAY12

实现修改电影业务

业务需求:点击列表后的修改按钮,跳转到电影修改页面,在修改页面中显示当前选中项电影的基本信息(数据回显),在这些数据基础之上,修改信息,点击提交,发送修改请求,完成修改电影业务。

实现步骤:

  1. 准备一个新的页面:views/movie/MovieUpdate.vue(复制MovieAdd.vue

  2. 配置路由:注意,需要传递id参数,才可以跳转到电影修改页面。【路由跳转过程中传参】

    第一种传参方案:/home/movie-update?id=1
    第二种传参方案:/home/movie-update/1
    
  3. 接收ID参数,完成数据的回填。

  4. 点击提交按钮,完成修改请求的发送,实现修改业务,修改完毕后,跳转到列表。

将一些路由相关的参数,配置在路由元数据中,方便使用

如下代码,可以将一些信息存储在路由对象的元数据中:

{
    path: 'actor-list',
    name: '/home/actor-list',  // 不重复即可
    component: () => import('../views/actor/ActorList.vue'),
    meta: {   // 元数据  这些数据是程序员自定义的数据,在vue组件中直接使用
       breadcrumbs: ['首页', '演员管理', '演员列表']
    }
}

在组件中,通过访问$route当前路由对象,来获取meta中存储的数据,动态更新导航。

this.$route.meta.breadcrumbs  --> ['首页', '演员管理', '演员列表']
实现添加电影院功能模块

需求分析:在菜单栏中,点击添加电影院菜单,看到添加电影院所需的表单页面,在表单页面中填写基本信息(可以使用高德地图选择地图上的某一个点获取位置信息),回填表单,点击提交按钮后,新增电影完成。

实现步骤:

  1. 准备两个子路由页面:views/cinema/CinemaList.vue views/cinema/CinemaAdd.vue
  2. 配置嵌套路由: /home/cinema-list.vue /home/cinema-add.vue
  3. HomeView.vue更新左侧边栏导航。
  4. 在电影院新增页面中,准备一个表单。需要嵌入高德地图。

在脚手架项目中使用高德地图

  1. 注册账号,创建应用,申请key,得到秘钥:

    key: 7bfbe3ab215345f405c23b5eed760ca8
    jscode: 0b7fff62bb4d6f79bae15c1a1483e327
    
  2. 阅读高德地图开放平台,地图jsAPI文档。 开发支持 -> web端 -> 地图jsAPI

    https://lbs.amap.com/api/jsapi-v2/summary/
    
  3. 安装AMapLoader模块,用于加载AMap

    npm i @amap/amap-jsapi-loader --save
    
  4. 在页面中引入AMapLoader,直接使用即可。

    import AMapLoader from '@amap/amap-jsapi-loader';
    
    AMapLoader.load({
        "key": "",   // 申请好的Web端开发者Key,首次调用 load 时必填
        "version": "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
        "plugins": [],   // 需要使用的的插件列表,如比例尺'AMap.Scale'等
    }).then((AMap)=>{
        map = new AMap.Map('container');
    }).catch(e => {
        console.log(e);
    })
    
你遇到的错误提示 `npm ERR! Missing script: "serve"` 表示当前项目的 `package.json` 文件中没有定义名为 `"serve"` 的脚本命令。 ### 常见原因: 1. 项目未正确初始化。 2. 手动创建了 `package.json`,但没有添加 `"scripts"` 部分。 3. 依赖未安装完整(例如未执行 `npm install`)。 4. 使用的是一个非 Vue CLI 项目,缺少必要的配置。 --- ### 解决方法: #### ✅ 方法一:确认是否是 Vue CLI 项目 如果你希望使用 `npm run serve` 启动一个 Vue 项目,**必须确保该项目是由 Vue CLI 创建的**。如果不是,请使用以下命令创建新项目: ```bash vue create vue_day02 ``` 然后进入项目目录并运行: ```bash cd vue_day02 npm run serve ``` #### ✅ 方法二:手动添加 `"serve"` 脚本到 `package.json` 如果你已有项目结构,并希望添加 `"serve"` 命令,可以编辑 `package.json` 文件,在 `"scripts"` 中添加如下内容: ```json "scripts": { "serve": "vue-cli-service serve" } ``` 确保你已经安装了 `vue-cli-service`(通常在运行 `npm install vue-cli -g` 和 `npm install` 后可用)。 #### ✅ 方法三:检查是否缺少依赖 如果 `package.json` 存在但依赖未安装,运行: ```bash npm install ``` 然后再尝试启动服务。 --- ### 示例 package.json 片段 ```json { "name": "vue_day02", "version": "0.1.0", "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build" }, "dependencies": { "vue": "^3.0.0" }, "devDependencies": { "@vue/cli-service": "^5.0.0" } } ``` ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值