vue,router,axios练习

简介: vue,router,axios练习

1 绑定数据

 <div id="app">

       {{ message }}

   </div>

   <script>

       var app = new Vue({

           el: '#app',

           data: {

               message: 'Hello elite,welcome to vue2!'

           }

       })

   </script>

2 v-if

<div id="app">

       <button  @click="Click()">click me</button>

       <p v-if="clicked">你点击了按钮</p>

       <p v-else="clicked">没点击</p>

   </div>

   <script>

       var app3 = new Vue({

           el: '#app',

           data: {

               clicked: false

           },

           methods: {

               Click(){

                   this.clicked = true

               }

           },

           })

   </script>

3.v-for

<div id="app">

       <ol>

         <li v-for="(todo,index) in todos" :key="index">

           {{ todo.itemn }}

         </li>

       </ol>

     </div>

     <script>

       var app = new Vue({

           el: '#app',

           data: {

               todos: [

               { itemn: '学习js' },

               { itemn: '学习Vue' },

               { itemn: '学习java' },

               { itemn: '学习python' }

               ]

           }

           })

     </script>

4. v-bind

 <div id="app">

       <ol>

         <!--

           现在我们为每个 todo-item 提供 todo 对象

           todo 对象是变量,即其内容可以是动态的。

           我们也需要为每个组件提供一个“key”,稍后再

           作详细解释。

         -->

         <todo-item

           v-for="item in todoList"

           v-bind:todo="item"

           v-bind:key="item.id"

         ></todo-item>

       </ol>

     </div>

   <script>

      Vue.component('todo-item', {

           props: ['todo'],

           template: '<li>{{ todo.language }}</li>'

           })

           var app7 = new Vue({

           el: '#app',

           data: {

               todoList: [

               { id: 0, language: '学习vue' },

               { id: 1, language: '学习java' },

               { id: 2, language: '学习python' }

               ]

           }

})

   </script>

5.component

<div id="app">

       <todo-item></todo-item>

   </div>

   <script>

          // 定义名为 todo-item 的新组件

          Vue.component('todo-item', {

           template: '<li>这是个li component</li>'

       })

        var app = new Vue({

           el: '#app',

           data: {

               todos: [

               { itemn: '学习js' },

               { itemn: '学习Vue' },

               { itemn: '学习java' },

               { itemn: '学习python' }

               ]

           }

           })

   

   </script>

6.v-model

div id="app">

       <p>{{ message }}</p>

       <input v-model="message">

     </div>

     <script>

           var app6 = new Vue({

           el: '#app',

           data: {

               message: ''

           }

           })

     </script>

7.生命周期

<div id="app">

       <p>{{ message }}</p>

     </div>

     <script>

           var app6 = new Vue({

           el: '#app',

           data: {

               message: '李白'

           },

           created() { // 在渲染之前执行

               console.log("created....")

           },

           mounted() { // 在渲染之后执行

               console.log("mounted....")  

           },

           methods: {

               method1(){

                   console.log("1212")

               }

             

           },

           })

     </script>

8.router

<div id="app">

       <h1>Hello App!</h1>

       <p>

           <!-- 使用 router-link 组件来导航. -->

           <!-- 通过传入 `to` 属性指定链接. -->

           <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->

           <router-link to="/">首页</router-link>

           <router-link to="/user">用户管理</router-link>

           <router-link to="/menu">菜单管理</router-link>

       </p>

       <!-- 路由出口 -->

       <!-- 路由匹配到的组件将渲染在这里 -->

       <router-view></router-view>

   </div>

   <script>

       // 1. 定义(路由)组件。

       // 可以从其他文件 import 进来

       const Welcome = { template: '<div>欢迎</div>' }

       const User = { template: '<div>user list</div>' }

       const Menu = { template: '<div>menu list</div>' }

       // 2. 定义路由

       // 每个路由应该映射一个组件。

       const routes = [

           { path: '/', redirect: '/welcome' }, //设置默认指向的路径

           { path: '/welcome', component: Welcome },

           { path: '/user', component: User },

           { path: '/menu', component: Menu }

       ]

       // 3. 创建 router 实例,然后传 `routes` 配置

       const router = new VueRouter({

           routes // (缩写)相当于 routes: routes

       })

       // 4. 创建和挂载根实例。

       // 从而让整个应用都有路由功能

       const app = new Vue({

           el: '#app',

           router

       })

       // 现在,应用已经启动了!

   </script>

9.axios

json数据:

{

 "data":[

   {

      "username":"elite",

      "age":12

   },

   {

       "username":"marry",

       "age":14

   }

 ]

<div id="app">

       <div>axios demo</div>

       <!--循环列表-->

       <table border="1">

           <tr>

               <td>姓名</td>

               <td>年龄</td>

           </tr>

           <tr v-for="(item,index) in userList">

               <td>{{item.username}}</td>

               <td>{{item.age}}</td>

           </td>

       </tr>

   </div>

   <script>

       var app = new Vue({

       el: '#app',

       data: {

           userList: []//数组

       },

       created() {

           this.getUserList()

       },

       methods: {

         

           getUserList(id) {

               debugger;

               //vm = this

               axios.get('data.json')

               .then(response => {

                   console.log(response)

                   this.userList = response.data.data

               })

               .catch(error => {

                   console.log(error)

               })

           }

       }

   })

   </script>

723ce4c399be4b9a8f5703a39816782d.png


相关文章
|
8月前
|
JavaScript
Vue中Axios网络请求封装-企业最常用封装模式
本教程介绍如何安装并配置 Axios 实例,包含请求与响应拦截器,实现自动携带 Token、错误提示及登录状态管理,适用于 Vue 项目。
339 1
|
资源调度 JavaScript
|
缓存 JavaScript 搜索推荐
Vue Router 导航钩子的使用场景
【10月更文挑战第13天】
552 156
|
移动开发 JavaScript API
Vue Router 核心原理
Vue Router 是 Vue.js 的官方路由管理器,用于实现单页面应用(SPA)的路由功能。其核心原理包括路由配置、监听浏览器事件和组件渲染等。通过定义路径与组件的映射关系,Vue Router 将用户访问的路径与对应的组件关联,支持哈希和历史模式监听 URL 变化,确保页面导航时正确渲染组件。
|
缓存 JavaScript 搜索推荐
|
JavaScript 前端开发 数据安全/隐私保护
Vue Router 简介
Vue Router 是 Vue.js 官方的路由管理库,用于构建单页面应用(SPA)。它将不同页面映射到对应组件,支持嵌套路由、路由参数和导航守卫等功能,简化复杂前端应用的开发。主要特性包括路由映射、嵌套路由、路由参数、导航守卫和路由懒加载,提升性能和开发效率。安装命令:`npm install vue-router`。
|
资源调度 JavaScript 前端开发
路由管理:Vue Router的使用和配置技巧
【10月更文挑战第21天】路由管理:Vue Router的使用和配置技巧
379 3
|
前端开发 JavaScript 安全
在vue前端开发中基于refreshToken和axios拦截器实现token的无感刷新
在vue前端开发中基于refreshToken和axios拦截器实现token的无感刷新
2447 4
|
JavaScript 搜索推荐 数据处理
Vue Router 导航钩子
【10月更文挑战第17天】需要注意的是,过度使用导航钩子可能会导致代码复杂度增加,因此需要合理规划和使用。此外,不同的钩子在不同的场景下具有不同的作用,需要深入理解其特点和用法,才能更好地发挥它们的价值。可以在实际项目中结合具体需求,充分利用这些导航钩子来打造更加智能、灵活的路由导航机制。
287 1

热门文章

最新文章