zoukankan      html  css  js  c++  java
  • (尚022)Vue案例_初始化显示(十分详细!!!)

    项目结构目录

     所需资料:

    comment_page文件夹:

     ========================================================================================================================

     组件化编码基本流程:

    1.拆分组件

    2.实现静态组件

    3.实现动态组件

    静态组件和动态组件区别?

    静态组件显示的数据是固定的,没有交互;

    动态组件有两个方面是动态的:(1).初始化显示(数据应该动态显示出来);(2).交互(用户点击提交/删除都能操作)

    =================================================================================

    具体操作:

    第一步:拆分组件

    1.拆分组件:(最外围是APP)

     

     创建4个组件

    (1).创建入口main.js

    (2).最外层组件App.vue

    (3).src下创建文件夹components(包含三个文件夹):(现在没有,创建三个vue文件)Add.vue,List.vue,Item.vue

    (4).编写main.js文件

    import Vue from 'vue'
    import App from './App.vue' //./代表当前目录

    new Vue({
    el:'#App',
    //将App映射为标签
    components:{App},
    //模板,里面写<App/>标签
    template:'<App/>'
    })

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    第二步:静态组件(拆分页面和样式)

    (1).在static文件夹下新建文件夹css,css文件夹内放入文件bootstrap.css文件

    (2).在index.html内引入bootstrap.css

    (3) 它有自己的页面,故先拆分页面,将自己index.html中的<div></div>放入App.vue的<template></template>标签内

     (4).拆分左右两个组件页面

     (5).1.App.vue中引入左右两个子组件

      2.映射成标签

      3.映射成标签后,写这两个标签

     (6).拆分样式

    将index.css样式,全部拷贝到List.vue的<style></style>标签中

     -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    第三步:动态组件(1.动态显示初始化数据;2.交互)

    1.动态显示初始化数据

    数据为这个列表

     (1).写之前:需要为这个列表定义一个名称comments,确定他的类型[]数组,数组中每一个元素为对象(因为它包含谁说的neme,说的什么content两个数据)

    (2).数据放在哪个组件里面(最重要)

    到底是放在哪个组件App,Add,List?依据是?看数据是某个组件用到还是某些组件用到(某个放在对应这个组件中,某些放在他们的父组件中)

    本例:

    Add需要,因为要为数组中添加一个;

    List也需要,因为要遍历读

    故放在它们的父组件App中

     (3).展示数据,将comments传递给<List/>,这就涉及到组件间通信:通过标签属性,最好是同名:comments="comments"(不写:的话传递的是内容comments,加上:传递的是变comments的值)

    (4). List需要接收(右键List就可以)

     (5).一个组件想要接收,父组件传给它的数据,必须要有一个概念"声明"

     

     (6).comments属性声明后可以在<template></template>中直接使用;

    (7).li要遍历产生,故需要将其抽取为Item.vue 组件,既然标签迁移到了Item.vue组件,所以对应样式也需要迁移到Item.vue组件

     (8).对应的样式搬迁

     (9).List.vue组件中引入Item.vue组件

     (10).Item.vue组件中读取comment属性

     (11).动态显示数据

     ======================================================================================================================

    最终页面展示图:

     厉害了!!!

  • 相关阅读:
    BZOJ 1101 莫比乌斯函数+分块
    BZOJ 2045 容斥原理
    BZOJ 4636 (动态开节点)线段树
    BZOJ 2005 容斥原理
    BZOJ 2190 欧拉函数
    BZOJ 2818 欧拉函数
    BZOJ 3123 主席树 启发式合并
    812. Largest Triangle Area
    805. Split Array With Same Average
    794. Valid Tic-Tac-Toe State
  • 原文地址:https://www.cnblogs.com/curedfisher/p/12034113.html
Copyright © 2011-2022 走看看