一、 server层向renderjs传值,并初始化renderjs
prop:可以随便定义
renderTaskDetail:是传往renderjs的数据
change:prop:prop和必须上面prop字段一样
renderScript.initAmap:【 renderScript】需要renderjs 中script标签的module属性一致
【initAmap】是renderjs中定义的初始化方法
<view class="mpapp-container">
<view
style="width: 750rpx; height:650rpx;"
:prop="renderTaskDetail"
:change:prop="renderScript.initAmap" >
</view>
</view>
serve层
<script>
export default{
data(){
return{
renderTaskDetail:{}
}
},
onLoad(){
setTimeout(()=>{
//传给renderjs的数据
this.renderTaskDetail= {
name:"小王"
}
},1500)
}
}
</script>
renderjs
<script module="renderScript" lang="renderjs">
export default{
data(){
return{
renderTaskDetail:{}
}
},
mounted() {
const script = document.createElement('script')
script.src = 'https://maps.googleapis.com/maps/api/js?key=abcdefg123456789&callback=initMap'
document.head.appendChild(script)
},
methods: {
initAmap(value) {
console.log("这里能拿到serve层传过来的数据并初始化",value)
},
}
}
</script>
二、 renderjs向server层传值
server层
<script>
export default {
data() {
return {}
},
methods: {
/**
* 给renderJS调用的方法
*/
methodForRenderJs:function(val){
console.log("收到参数:");
console.log(val);
},
}
}
</script>
renderjs
<script module="renderScript" lang="renderjs">
export default{
mounted(){
this.$ownerInstance.callMethod('methodForRenderJs',{val1:"参数1",val2:"参数2"});
}
}
</script>