官网上的例子是ofa.js@4.3.40,可以在src里带参数,ofa.js@4.5.18,是不可以的,方法变了?还是不支持传参数
Opened this issue · 7 comments
例子:
o-page src="./page.html?count=100"
问号后面的参数
?count=100
加载时,不带入 ?后面的参数
我试了下可以啊,有具体一点的案例吗?
<template page>
<div>Page1 ,count:{{count}}</div>
<script>
export default async ({ query }) => {
return {
data: {
count: query.count || 0,
},
};
};
</script>
</template>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>测试页面</title>
<script src="https://cdn.jsdelivr.net/gh/kirakiray/ofa.js@4.5.18/dist/ofa.min.js"></script>
</head>
<body>
<o-page src="./page1.html?count=100"></o-page>
</body>
</html>
嗯嗯, 是可以的。
我可能 是真的 要传参给后台的 html 工厂 ,用参数 来指向 生成我的每个页面的代码。
我修改了后台的路由逻辑 来适应,ofa的框架。
./server/htmlgcsql2/g-ymbh-ofspage/test-demo.html
test-demo.html 组件或页面 的 定义
htmlgcsql2 是个后台api真是地址
g-ymbh-ofspage 是参数的key和val ymbh=ofspage
这样达到 我微前端的 代码的动态 生成 , 并符合 你的加载 机制。
我在'proto'上定义'changeVal'方法 为什么 不成功!!!!!!!
在 x-fill :value="arr" 循环下使用 on:click="changeVal"
`
export default {
tag: "test-demo",
data:{
count: 0,
arr: [], arr1: [],
_changeVal() {
this.arr1 = [];
},
},
proto:{
changeVal() {
this.arr1 = [1,2,3];
},
},
created() {
jQuery.ajax({
url: "server/getdatalisapi.php",
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
嗯嗯, 是可以的。 我可能 是真的 要传参给后台的 html 工厂 ,用参数 来指向 生成我的每个页面的代码。 我修改了后台的路由逻辑 来适应,ofa的框架。 ./server/htmlgcsql2/g-ymbh-ofspage/test-demo.html test-demo.html 组件或页面 的 定义 htmlgcsql2 是个后台api真是地址 g-ymbh-ofspage 是参数的key和val ymbh=ofspage
这样达到 我微前端的 代码的动态 生成 , 并符合 你的加载 机制。
可以将 ofajs 更新到最新版 4.5.23 ,可以不使用 html 后缀,保证目标接口返回内容的 response headers content type 为 text/html 就可以了。
<script src="https://cdn.jsdelivr.net/gh/kirakiray/ofa.js@4.5.23/dist/ofa.min.js"></script>
我在'proto'上定义'changeVal'方法 为什么 不成功!!!!!!! 在 x-fill :value="arr" 循环下使用 on:click="changeVal" `
- 货位名称 : {{$data.text}}
选择使用
`
export default { tag: "test-demo", data:{ count: 0, arr: [], arr1: [], _changeVal() { this.arr1 = []; }, }, proto:{ changeVal() { this.arr1 = [1,2,3]; }, }, created() { jQuery.ajax({ url: "server/getdatalisapi.php",没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法 没有在目标上找到'changeVal'方法,请在组件的'proto'上定义'changeVal'方法
是不是在 x-fill 内使用 changeVal
?要改成 $host.changeVal($data)
。
是不是在 x-fill 内使用
changeVal
?要改成$host.changeVal($data)
。
<template component>
<x-fill :value="arr">
<div on:click="$host.changeVal($data)">{{$data}}</div>
</x-fill>
<script>
export default {
data:{
arr:[{a:"aaaa"},{b:"bbbbb"}]
},
proto:{
changeVal(data){
console.log(data);
// xxxxxx
}
}
};
</script>
</template>