简体中文
uni小程序sdk 版本需 ≥ 2.3.4
扩展原生能力指的是将您原生开发的功能通过一定规范暴露给 uni小程序环境,然后即可在 uni小程序应用中调用您的原生功能。
通过扩展API registerModule
扩展 module,小程序再通过 uni.requireNativePlugin
引入模块
下面以TestModule
为例
import { registerModule } from '@dcloudio/uni-app-runtime'
registerModule("TestModule", {
test: (a: number, b: number): number => {
return a + b
}
} as ESObject)
上面的示例还可以把 ESObject 对象单独写到某个 .ets 文件,并通过 export 和 import 导出导入
TestModule.ets文件内容
export default {
test: (a: number, b: number): number => {
return a + b;
}
} as ESObject
通过import导入
import { registerModule } from '@dcloudio/uni-app-runtime'
import TestModule from './TestModule'
registerModule("TestModule", TestModule)
<template>
<div>
<button type="primary" @click="test">调用模块的test函数</button>
</div>
</template>
<script>
// 获取 module
const testModule = uni.requireNativePlugin("TestModule")
export default {
methods: {
test() {
// 调用testModule模块中的test函数
let res = testModule.test(1, 2)
console.log('res: ', res)
}
}
}
</script>