支付宝小程引入 SJS

import-sjs标签用于在AXML文件中引入SJS脚本的符号,可以引用默认导出和具名导出的函数和变量。默认导出必须通过name属性引入,而具名导出可以通过Object字面量表达式映射。同名导出会导致编译错误或覆盖,且覆盖后的默认导出无法再访问。
摘要由CSDN通过智能技术生成

import-sjs 标签用于将 SJS 脚本文件定义的符号引入当前 AXML 文件

<!-- page.axml -->
<import-sjs name="util" from="./util.sjs"/>
<view> 使用变量 {{util.message}}</view>
<view> 使用函数 {{util.getMessage(msg)}}</view>`,并在表达式中使用
// util.sjs
export default {
  message: 'hello alipay',
  getMsg: x => x,
};

默认导出

通过 export default 导出的 默认导出 符号,必须通过 来引入。
import-sjs 功能标签的 name 属性必须是一个合法的标识符

具名导出

通过 export const a 导出的 具名 符号,必须通过 来引入。
import-sjs 功能标签的 name 属性满足以下规则
• 是一个 Object 字面量表达式
• Object 的 key 和 value 均是一个 标识符
以下是一个复杂示例

// helper.sjs
export const a = 1;
export function b() { return 2 }
<!-- page.axml -->
<import-sjs src="./helper.sjs"  name="{ a, b: c }"/>
<view>{{ c() }}:{{a}}:{{ b }}</view>
<!-- 等价于 -->
<view>{{ 2 }}:{{ 1 }}:{{ undefined }}</view>

需要注意:

• 如果 name 出现 默认导出 的同名,会在编译期直接覆盖(即不论 标签的顺序,被覆盖的 默认导出 符号在整个 AXML 中均不可访问)。
• 如果 name 出现 具名导出 的同名,会直接抛出编译异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值