微信小程序学习记录
微信小程序学习记录
一、局部引用
在使用微信小程序开发时,我们经常需要引用其他组件或模块来实现复杂的功能。局部引用是指在当前页面中引用的组件或模块,这些组件或模块只在当前页面有效。
要在使用的页面的json文件中的`usingComponents`使用键值对进行引用,我们可以按照以下步骤操作:
1. 在当前页面的json文件中添加一个名为`usingComponents`的属性。
2. 在`usingComponents`属性中,定义一个键值对,其中键是组件或模块的名称,值是组件或模块的路径。
例如:
```json{
"usingComponents": {
"myComponent": "/components/my-component"
}
}
```
在上面的例子中,我们定义了一个名为`myComponent`的局部引用,它引用的组件位于`/components/my-component`路径下。
二、全局引用
全局引用是指在整个小程序中有效的引用。与局部引用不同,全局引用可以在任何页面中使用。
要进行全局引用,我们需要在小程序的`app.json`文件中定义一个名为`globalComponents`的属性。
例如:
```json{
"pages": [
"index",
"components/my-component"
],
"globalComponents": {
"myComponent": "/components/my-component"
}
}
```
在上面的例子中,我们定义了一个名为`myComponent`的全局引用,它引用的组件位于`/components/my-component`路径下。
三、组件样式隔离
组件样式隔离是指每个组件都有自己的样式空间,避免样式冲突。微信小程序提供了两种方式来实现组件样式隔离:
1. 自定义组件的样式隔离特性:在小程序中,每个组件都有一个`styleIsolation`属性,可以设置为`"apply-shared"`、`"shareable"`或`"none"`。默认情况下,自定义组件的样式隔离特性是`"apply-shared"`,这意味着每个组件都有自己的样式空间。
2. 全局样式:可以在小程序的`app.json`文件中定义一个名为`globalStyle`的属性来设置全局样式。
例如:
```json{
"pages": [
"index",
"components/my-component"
],
"globalComponents": {
"myComponent": "/components/my-component"
},
"globalStyle": {
"font-size": "14px"
}
}
```
在上面的例子中,我们定义了一个全局样式,设置了字体大小为`14px`。
四、组件样式隔离的注意点
1. 避免使用相同的类名:如果两个或多个组件使用相同的类名,这可能会导致样式冲突。
2. 避免使用全局样式:尽量避免使用全局样式,因为这可能会影响到其他组件的样式。
五、修改组件的样式隔离选项
如果需要修改组件的样式隔离选项,可以在小程序的`app.json`文件中定义一个名为`globalComponents`的属性,并设置`styleIsolation`属性。
例如:
```json{
"pages": [
"index",
"components/my-component"
],
"globalComponents": {
"myComponent": "/components/my-component",
"styleIsolation": "shareable"
}
}
```
在上面的例子中,我们修改了`myComponent`的样式隔离选项为`"shareable"`。
通过以上步骤和注意点,微信小程序开发者可以更好地理解和使用组件样式隔离特性。