W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
SJS(safe/subset javascript)是小程序一套自定義腳本語言,可以在 AXML 中使用其構(gòu)建頁面結(jié)構(gòu)。 SJS 是 JavaScript 語言的子集,與 JavaScript 是不同的語言,其語法并不與 JavaScript 一致,請勿將其等同于 JavaScript。
在 .sjs 文件中定義 SJS:
// pages/index/index.sjs
const message = 'hello alipay';
const getMsg = x => x;
export default {
message,
getMsg,
};
// pages/index/index.js
Page({
data: {
msg: 'hello taobao',
},
});
<!-- pages/index/index.axml -->
<import-sjs name="m1" from="./index.sjs"/>
<view>{{m1.message}}</view>
<view>{{m1.getMsg(msg)}}</view>
頁面輸出:
hello alipay
hello taobao
注意:
.sjs
文件中。然后在 axml 中使用 <import-sjs>
標(biāo)簽引入。示例代碼:
// pages/index/index.js
Page({
data: {
msg: 'hello alipay',
},
});
// pages/index/index.sjs
function bar(prefix) {
return prefix;
}
export default {
foo: 'foo',
bar: bar,
};
// pages/index/namedExport.sjs
export const x = 3;
export const y = 4;
<!-- pages/index/index.axml -->
<import-sjs from="./index.sjs" name="test"></import-sjs>
<!-- 也可以直接使用單標(biāo)簽閉合的寫法
<import-sjs from="./index.sjs" name="test" />
-->
<!-- 調(diào)用 test 模塊里面的 bar 函數(shù),且參數(shù)為 test 模塊里面的 foo -->
<view> {{test.bar(test.foo)}} </view>
<!-- 調(diào)用 test 模塊里面的 bar 函數(shù),且參數(shù)為 page.js 里面的 msg -->
<view> {{test.bar(msg)}} </view>
<!-- 支持命名導(dǎo)出(named export) -->
<import-sjs from="./namedExport.sjs" name="{x, y: z}" />
<view>{{x}}</view>
<view>{{z}}</view>
頁面輸出:
foo
hello alipay
3
4
屬性 | 類型 | 是否必填 | 說明 |
---|---|---|---|
name | String | 是 | 當(dāng)前<import-sjs> 標(biāo)簽的模塊名 |
from | String | 是 | 引用 .sjs 文件的相對路徑 |
說明:
name 屬性指定當(dāng)前 <import-sjs>
標(biāo)簽的模塊名。在單個 AXML 文件內(nèi),建議將 name 值設(shè)為唯一。若有重復(fù)模塊名則按照先后順序覆蓋(后者覆蓋前者)。不同 AXML 文件之間的 <import-sjs>
模塊名不會相互覆蓋。
name 屬性可使用一個字符串表示默認(rèn)模塊名,也可使用 {x}
表示命名模塊的導(dǎo)出。
注意:
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: