美文网首页
vue 学习之 vue 文件基本构成

vue 学习之 vue 文件基本构成

作者: 啊笨猫 | 来源:发表于2019-07-05 15:32 被阅读0次
    <!-- // vue 单文件组件的基本组成 -->
    <!-- 1.组件 html template 部分 -->
    <!-- 2.组件 js 逻辑 script 部分-->
    <!-- 3. 组件CSS  style 部分-->
    <!-- 1 组件Html 模板-->
    <template lang="">
        <div>
            <h1 v-on:click="onclick"  class="h1">{{mes}}</h1>
        </div>
    </template>
    <!-- 2 组件JS逻辑 所有的 js 代码都需要写在下面 比如导入组件相关操作-->
    <script>
    export default {
        //name表示外部使用的组件名字一般和文件名相同
        name:'word',
        //props表示接受外部的参数
            // props的类型: String Number Boolean Array Object
            //注意 除了 String类型的不需要v-bind: 其他类型都需要v-bind:修饰 来告诉 vue参数的类型
        props:{
            mes:String,
            num:Number
        },
        // 这个 prop 用来传递一个初始值;这个子组件接下来希望将其作为一个本地的 prop 数据来使用。在这种情况下,最好定义一个本地的 data 属性并将这个 prop 用作其初始值:
        data:function(){
            return{
               dataMes:this.mes
            }
        },
        //这个 prop 以一种原始的值传入且需要进行转换。在这种情况下,最好使用这个 prop 的值来定义一个计算属性:
        computed:{
            dataNum:function(){
                return this.num+1
            }
        },
        //这里是该组件所有的方法事件逻辑
        // 不应该使用箭头函数来定义 method 函数 (例如 onclick: () =>  console.log(this.dataNum))。理由是箭头函数绑定了父级作用域的上下文,所以 this 将不会按照期望指向 Vue 实例,this.a 将是 undefined。。
        methods:{
            onclick:function(){
                console.log(this.dataNum)            
            }
        }
    }
    </script>
    <!-- 3 组件CSS  需要添加 scoped关键字 来限制该CSS只作用于组件-->
    <style scoped>
        .h1{
            color: red
        }
    </style>
    
    
    

    相关文章

      网友评论

          本文标题:vue 学习之 vue 文件基本构成

          本文链接:https://www.haomeiwen.com/subject/zadehctx.html