当前位置:首页 > VUE

vue实现电影选择

2026-03-28 18:21:31VUE

Vue 实现电影选择功能

创建 Vue 项目

使用 Vue CLI 创建一个新项目,确保已安装 Vue CLI。运行以下命令创建项目:

vue create movie-selection
cd movie-selection

安装依赖

如果需要使用 Axios 进行数据请求,安装 Axios:

npm install axios

创建电影列表组件

src/components 目录下创建 MovieList.vue 文件,用于显示电影列表和选择功能。

<template>
  <div>
    <h3>电影列表</h3>
    <ul>
      <li v-for="movie in movies" :key="movie.id" @click="selectMovie(movie)">
        {{ movie.title }} - {{ movie.year }}
      </li>
    </ul>
    <div v-if="selectedMovie">
      <h3>已选择: {{ selectedMovie.title }}</h3>
      <p>年份: {{ selectedMovie.year }}</p>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      movies: [
        { id: 1, title: '肖申克的救赎', year: 1994 },
        { id: 2, title: '阿甘正传', year: 1994 },
        { id: 3, title: '泰坦尼克号', year: 1997 }
      ],
      selectedMovie: null
    }
  },
  methods: {
    selectMovie(movie) {
      this.selectedMovie = movie
    }
  }
}
</script>

动态加载电影数据

如果需要从 API 动态加载电影数据,可以使用 Axios:

<script>
import axios from 'axios'

export default {
  data() {
    return {
      movies: [],
      selectedMovie: null
    }
  },
  created() {
    this.fetchMovies()
  },
  methods: {
    fetchMovies() {
      axios.get('https://api.example.com/movies')
        .then(response => {
          this.movies = response.data
        })
        .catch(error => {
          console.error('获取电影数据失败:', error)
        })
    },
    selectMovie(movie) {
      this.selectedMovie = movie
    }
  }
}
</script>

添加样式

为电影列表和选择项添加基本样式:

<style scoped>
ul {
  list-style-type: none;
  padding: 0;
}
li {
  padding: 8px;
  margin: 5px 0;
  background-color: #f0f0f0;
  cursor: pointer;
}
li:hover {
  background-color: #e0e0e0;
}
</style>

在主应用中使用组件

src/App.vue 中引入并使用 MovieList 组件:

<template>
  <div id="app">
    <MovieList />
  </div>
</template>

<script>
import MovieList from './components/MovieList.vue'

export default {
  name: 'App',
  components: {
    MovieList
  }
}
</script>

运行项目

启动开发服务器查看效果:

vue实现电影选择

npm run serve

扩展功能

  1. 添加搜索功能,允许用户搜索特定电影
  2. 实现多选功能,允许用户选择多部电影
  3. 添加电影详情页面,显示更多信息
  4. 使用 Vuex 管理电影选择和状态

这个实现提供了基本的电影选择功能,可以根据需求进一步扩展和完善。

标签: 电影vue
分享给朋友:

相关文章

vue架构实现

vue架构实现

Vue 架构实现核心方案 Vue.js 的架构实现通常围绕模块化、组件化和状态管理展开。以下为常见实现方案: 基于单文件组件(SFC)的模块化 通过 .vue 文件组织模板、脚本和样式: <…

vue 全景实现

vue 全景实现

Vue 全景实现方案 在Vue中实现全景效果,通常需要结合WebGL或第三方库来处理3D场景渲染。以下是几种常见方法: 使用Three.js库 Three.js是一个强大的WebGL库,适合创建3D…

vue实现上传

vue实现上传

Vue 文件上传实现方法 使用 Vue 实现文件上传可以通过原生 HTML5 的 <input type="file"> 元素结合 Vue 的事件处理和数据绑定来实现。 基础实现步骤…

vue 实现遮罩

vue 实现遮罩

Vue 实现遮罩层的方法 使用固定定位和透明背景 在Vue中实现遮罩层可以通过CSS固定定位结合透明背景色完成。创建一个全屏遮罩组件,利用position: fixed覆盖整个视窗。 <tem…

vue 实现图钉

vue 实现图钉

实现图钉效果的步骤 在Vue中实现图钉(固定位置)效果,可以通过CSS的position: sticky属性或监听滚动事件动态修改元素样式。以下是两种常见方法: 方法一:使用CSS的posi…

vue实现模糊

vue实现模糊

Vue实现模糊搜索的方法 在Vue中实现模糊搜索功能通常需要结合输入框和列表渲染,通过监听输入内容动态过滤数据。以下是几种常见实现方式: 使用计算属性实现 计算属性适合处理需要响应式更新的搜索逻辑:…