亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【金秋打卡】第4天-玩轉組件庫搭建全流程

第一模块

​ 课程名称:玩转组件库搭建全流程

​ 章节名称:

  • 3-1 设计组件
  • 3-2 编写html结构的样式代码
  • 3-3 编写逻辑代码
  • 3-4 测试组件

​ 讲师姓名:郭小新

第二模块

​ 课程内容(概述)

​ 1、编写组件的流程

		- 设计组件
		- 编写html和样式
		- 编写逻辑代码
		- 测试组件

​ 2、设计组件的原则

​ 要能复用、通用

​ 3、项目信息

​ 基于webpack+vue2+scss

第三模块

rollup打包组件库(二) - 编写组件逻辑

基于上一篇文章,这次我们来编写组件的逻辑。

项目结构
|-packages
|---components		 // 用于编写存放组件
|-----ext-button
|-------index.js
|-------main.vue
|---common			 // 存放公共样式文件	
|-----index.scss
|---index.js		 
|---rollup.config.js // 打包配置脚本

packages/components/ext-button/index.js

import ExtButton from './main.vue'
ExtButton.install = function (Vue) {
    Vue.component(ExtButton.name, ExtButton)
}
export default ExtButton

packages/components/ext-button/main.vue

由于button的高度、边框、文字颜色等都可以由Css来控制。因此定义text、clzss来控制button的内容和样式。

注:这里的button 要加上type属性。不然会出现表单自动提交或者按enter回车跳转页面问题

<template>
    <button type="button" :class="clzss">{{ text }}</button>
</template>
<script>
import { defineComponent } from 'vue'

export default defineComponent({
    name: 'ExtButton',
    props: {
        text: String,
        clzss: String
    }
})
</script>

导出组件

// 公共样式类
import './common/index.scss'
import ExtButton from './ext-button/index.js'
function install(Vue) {
    Vue.component(ExtButton.name, ExtButton)
}
export { ExtButton }
export default {
    install
}

如何使用

<script>
import ExtButton from '../packages/ext-button/index.js'
</script>

<template>
	<ExtButton clzss="max-h-50 max-p-10" text="这是button" />
</template>

问题一:直接在页面引入组件报错The requested module does not provide an export named

// 错误 由于index.js是用export default方式导出,不能用对象结构
import { ExtButton } from "../packages/ext-button/index.js" 
// 正确
import ExtButton from "../packages/ext-button/index.js";

第四模块

图片描述
图片描述

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消