kbone高级 - 使用小程序内置组件_小程序 usingcomponents(1)

  }
]

},
resolve: {
extensions: [‘*’, ‘.js’, ‘.vue’, ‘.json’]
},
plugins: [
new webpack.DefinePlugin({
‘process.env.isMiniprogram’: process.env.isMiniprogram, // 注入环境变量,用于业务代码判断
}),
new MiniCssExtractPlugin({
filename: ‘[name].wxss’,
}),
new VueLoaderPlugin(),
new MpPlugin(require(‘./miniprogram.config.js’)),
],
}


在 `04-custom-components/build` 文件夹下创建 `miniprogram.config.js` 文件,内容如下:



const path = require(‘path’)

module.exports = {
origin: ‘https://test.miniprogram.com’,
entry: ‘/’,
router: {
index: [‘/’],
},
redirect: {
notFound: ‘index’,
accessDenied: ‘index’,
},
generate: {
wxCustomComponent: {
root: path.join(__dirname, ‘…/src/custom-components’),
usingComponents: {
‘comp-a’: {
path: ‘comp-a’,
props: [‘prefix’, ‘suffix’],
events: [‘someevent’],
},
‘comp-b’: {
path: ‘comp-b/index’,
props: [‘prefix’],
},
‘comp-c’: ‘comp-c’,
},
},
// 构建完成后是否自动安装小程序依赖。‘npm’:使用 npm 自动安装依赖
autoBuildNpm: ‘npm’
},
app: {
navigationBarTitleText: ‘miniprogram-project’,
},
projectConfig: {
appid: ‘’,
projectname: ‘custom-components’,
},
packageConfig: {
author: ‘Felixlu’,
},
}


#### 2.3 编写案例有关组件


#### 2.3.1 创建 main.mp.js


在项目根目录下创建 `/src/index`,在 `index` 下创建 `main.mp.js` 文件,内容如下:



import Vue from ‘vue’
import App from ‘./App.vue’

export default function createApp() {
const container = document.createElement(‘div’)
container.id = ‘app’
document.body.appendChild(container)

return new Vue({
el: ‘#app’,
render: h => h(App)
})
}


#### 2.3.2 创建 App.vue 组件


在 `/src/index` 下创建 `App.vue` 组件,内容为:



kbone


#### 2.3.3 创建 comp-a 组件


在根目录下创建 `/src/custom-components` 文件夹,在这个文件夹下创建小程序原生组件 `comp-a`,四个文件内容如下:


/src/custom-components/comp-a.wxml



comp-a
comp-a button
{{prefix}} -{{str}}- {{suffix}}


/src/custom-components/comp-a.js



const _ = require(‘./common/utils’)

Component({
properties: {
prefix: {
type: String,
value: ‘defaultPrefix’,
},
suffix: {
type: String,
value: ‘defaultSuffix’,
},
},
data: {
str: _.getWords() + ‘comp-a’,
},
methods: {
onTap() {
this.triggerEvent(‘someevent’, {
detail: {
from: ‘comp-a’,
},
})
},

printf() {
  console.log('I am comp-a')
},

},
})


/src/custom-components/common/utils.js



module.exports = {
getWords() {
return 'Hello, ’
},
}


/src/custom-components/comp-a.json



{
“component”: true
}


/src/custom-components/comp-a.wxss



// 内容为空


#### 2.3.4 创建 comp-b 组件


在根目录下创建 `/src/custom-components/comp-b` 文件夹,在这个文件夹下创建小程序原生组件 `comp-b`,四个文件内容如下:


/src/custom-components/comp-b/index.wxml



comp-b
{{prefix}} -{{str}}- {{suffix}}


/src/custom-components/comp-b/index.js



const _ = require(‘…/common/utils’)

Component({
properties: {
prefix: {
type: String,
value: ‘defaultPrefix’,
},
suffix: {
type: String,
value: ‘defaultSuffix’,
},
},
data: {
str: _.getWords() + ‘comp-b’,
},
})


/src/custom-components/comp-b/index.json



{
“component”: true
}


/src/custom-components/comp-b/index.wxss



.prefix, .suffix {
color: green;
}


#### 2.3.5 创建 comp-c 组件


在 `/src/custom-components` 文件夹下创建小程序原生组件 `comp-c`,四个文件内容如下:


/src/custom-components/comp-c.wxml



comp-c

comp-d slot


/src/custom-components/comp-c.js



Component({})


/src/custom-components/comp-c.json



{
“component”: true,
“usingComponents”: {
“comp-d”: “./comp-d”
}
}


/src/custom-components/comp-c.wxss



// 内容为空


#### 2.3.6 创建 comp-d 组件


在 `/src/custom-components` 文件夹下创建小程序原生组件 `comp-d`,四个文件内容如下:


/src/custom-components/comp-d.wxml



comp-d


/src/custom-components/comp-d.js



Component({})


/src/custom-components/comp-d.json



{
“component”: true
}


/src/custom-components/comp-d.wxss



// 内容为空


#### 2.4 小程序端效果预览



npm run mp


![](https://img-blog.csdnimg.cn/07c307557714441e9a3fa16d3c89fb62.png)


**先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7**

**深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**

**因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/c351438895a3888c0fbd61bfe8df2b4f.png)
![img](https://img-blog.csdnimg.cn/img_convert/fbe105bb57e4d595c6ead347ccd6f5a1.png)
![img](https://img-blog.csdnimg.cn/img_convert/75791ad6ba532642b657403be0881eca.png)
![img](https://img-blog.csdnimg.cn/img_convert/6838e48b5c8997fc7269d4d214104e5a.png)
![img](https://img-blog.csdnimg.cn/img_convert/091b79eb2089f2e9c08a96c0f026f090.png)
![img](https://img-blog.csdnimg.cn/img_convert/79bf5dc4119dd75630848909cfd70036.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618540462)**
3)]
[外链图片转存中...(img-VoTIwHk6-1714131641144)]
[外链图片转存中...(img-IuA3PD3M-1714131641144)]
[外链图片转存中...(img-ujZZYduu-1714131641145)]
[外链图片转存中...(img-LKYQi2nQ-1714131641146)]
[外链图片转存中...(img-hDVjA2UB-1714131641146)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618540462)**
  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值