放低姿态,学习进步

vue开发组件设置*.vue文件模板

2018-07-10  本文已影响0人  SanY_cjp

title: vue组件开发模板
date: 2016-11-21


本文介绍vue组件开发的模板,在使用vue技术开发的项目中采用此模板进行组件开发。

vue基础组件开发要求

目标:1、可移植;2、快速安装

vue业务组件开发模板


<template>
  <!-- 功能描述 -->
  <div class="your class">
      // 组件代码
      <my-compnent1 :props1></my-compnent1>
      <my-compnent2 :props2></my-compnent2>
      <!--  @slot 描述 -->
      <slot name="title"></slot>
      <!--  /描述 -->
      <!--  带权限的button以及国际化示例,通用组件不需要国际化 -->
      <addButton :class="{ disabled: !hasPermission.add }">{{$t(i18nSource.btnText)}}</addButton>
      <!--  /带权限的button以及国际化示例,通用组件不需要国际化  -->
  </div>
  <!-- /功能描述 -->
</template>
<script>
  /**
   * @fileOverview 模块描述
   * @author 姓名
   * @date 时间(yyyy.MM.dd HH:mm:ss)
   */

  import 模块 from '文件路径';

  export default{
    components:{

    },
    props: {
    /**
     * @props attribute1 {类型} 属性说明,包括取值范围以及要求
     * @default 默认值
     * @required
     */
       attribute1: {    // 属性
        type: 类型,
        default: 默认值
      },
    /**
     * @props attribute2 {类型} 属性说明,包括取值范围以及要求
     * @default 默认值
     */
      attribute2: {    // 属性
        validator (value) {
          // 验证,通用的验证方法应放在验证工具validator.js中
        },
        default(){
          return 默认值
        }
      },
    /**
     * @props i18nSource {Object} 需要国际化的路径对象
     * @default {btnText: ''}
     */
      i18nSource: {
       validator (value) {
         // 验证为对象
       },
       default(){
          return {btnText: ''}
        }
      }
    },
    data () {
      return {
        /**
         * @eventOn 监听的事件
         * @event {on-previous} 事件的描述,如获取上一页信息
         * @event {on-next}  事件的描述,如获取下一页信息
         */
        eventOn:{
          'on-previous':'on-previous', 
          'on-next':'on-next'
        },
        /**
         * @eventEmit  发布的事件
         * @event {on-getData}  {@return {类型} 事件的返回值说明} 
         */
        eventEmit:{
          'on-getData':'on-getData'
        }
      }
    },
    computed: {
      /**
       * 说明
       * @return {Number} 返回值
       */
      computedAtrribute: function () {
        return // 返回值
      },
      /**
       * 权限
       * @return {Object} 返回所有权限的对象
       */
      hasPermission(){
         let permissions = {
            add: false
         }
         permissions.add = this.$store.state.permissions.indexOf(your module permission code)  < 0 ? false : true
         return permissions
      }
    },
    /**
     * 生命周期钩子
     * 描述干了什么
     */
    beforeCreate created beforeMount mounted etc.,
    methods: {
      /**
       * 说明
       * @param {Number} arg1 描述
       * @param {Array} arg2 描述,如果array有类型限制在描述中说明
       * @param {String | Number} arg3 描述
       * @return {Number} 返回值
       */
      methodName: function (arg1, arg2, arg3) {
        // 代码
        return // 返回值
      }
   },
   ready () {
       // 代码
    },
    watch: function() {
      // 代码
    }
 }
</script>



开发工具中设置

如图打开WebStorm依次选择FileSettingsEditorFile and Code Templates,在右侧新加一种文件类型,并在空白处将模板复制进去。

webS设置文件初始模板
上一篇 下一篇

猜你喜欢

热点阅读