>

概述及资源

使用taro开发的接入demo可在 GitHub上获取,demo演示了taro使用微信小程序插件和百度自定义组件混合开发方式 (demo地址)。

注意:如果在 Taro 项目引用了小程序原生的页面、组件和插件,那么该项目将不再具备多端转换的能力。 例如,如果使用了微信小程序的原生组件,那么项目只能转换成微信小程序,转义成其他平台会失效,使用其他小程序原生组件同理。

使用小程序插件

引入插件

使用插件前,使用者要在 app.confg.js 的配置中声明需要使用的插件,例如

export default {
plugins: {
myPlugin: {
version: '1.0.0',
provider: 'wxidxxxxxxxxxxxxxxxx'
}
}
}

如上例所示, plugins 定义段中可以包含多个插件声明,每个插件声明以一个使用者自定义的插件引用名作为标识,并指明插件的 appid 和需要使用的版本号。其中,引用名(如上例中的 myPlugin)由使用者自定义,无需和插件开发者保持一致或与开发者协调。在后续的插件使用中,该引用名将被用于表示该插件。

taro原生插件混合开发参考文档

使用插件组件

使用插件提供的自定义组件,和上述 “引入第三方组件” 的方式相仿,在页面或组件的配置中定义需要引入的自定义组件时,使用 plugin:// 协议指明插件的引用名和自定义组件名,例如:

export default {
// 定义需要引入的插件
usingComponents: {
'hello-component': 'plugin://myPlugin/hello-component'
}
}

出于对插件的保护,插件提供的自定义组件在使用上有一定的限制:

  • 默认情况下,页面中的 this.$scope.selectComponent 接口无法获得插件的自定义组件实例对象;

  • Taro.createSelectorQuery 等接口的 >>> 选择器无法选入插件内部。

taro原生自定义组件混合开发参考文档

注意事项

React 中需要以 on 开头(取代原生绑定语法中的 bind)的驼峰形式进行事件绑定。