微信小程序 - WXS

WXS(WeiXin Script)是小程序的一套腳本語言,結合 WXML,能夠構建出頁面的結構。javascript

注意

  1. WXS 不依賴於運行時的基礎庫版本,能夠在全部版本的小程序中運行。
  2. WXS 與 JavaScript 是不一樣的語言,有本身的語法,並不和 JavaScript 一致。
  3. WXS 的運行環境和其餘 JavaScript 代碼是隔離的,WXS 中不能調用其餘 JavaScript 文件中定義的函數,也不能調用小程序提供的API。
  4. WXS 函數不能做爲組件的事件回調。
  5. 因爲運行環境的差別,在 iOS 設備上小程序內的 WXS 會比 JavaScript 代碼快 2 ~ 20 倍。在 android 設備上兩者運行效率無差別。

WXS模塊的代碼能夠編寫在 wxml 文件中的 <wxs> 標籤內,或以 .wxs 爲後綴名的文件內。html

每個 .wxs 文件和 <wxs> 標籤都是一個單獨的模塊。java

每一個模塊都有本身獨立的做用域。即在一個模塊裏面定義的變量與函數,默認爲私有的,對其餘模塊不可見。android

一個模塊要想對外暴露其內部的私有變量與函數,只能經過 module.exports 實現。小程序

<!--寫在wxml裏的wxs模塊-->
<wxs module="m1">
    var msg = "hello world";
    module.exports.message = msg;
</wxs>

<view> {{m1.message}} </view>        
// wxs文件

var foo = "'hello world' from comm.wxs";
var bar = function(d) {
  return d;
}
module.exports = {
  foo: foo,
  bar: bar
};

module 對象

每一個 wxs 模塊均有一個內置的 module 對象。exports: 經過該屬性,能夠對外共享本模塊的私有變量與函數。api

require函數

.wxs模塊中引用其餘 wxs 文件模塊,可使用 require 函數。函數

引用的時候,要注意以下幾點:ui

  • 只能引用 .wxs 文件模塊,且必須使用相對路徑。
  • wxs 模塊均爲單例,wxs 模塊在第一次被引用時,會自動初始化爲單例對象。多個頁面,多個地方,屢次引用,使用的都是同一個 wxs 模塊對象。
  • 若是一個 wxs 模塊在定義以後,一直沒有被引用,則該模塊不會被解析與運行。

一些語法和api和javascript同樣。spa

轉載自官方文檔:https://developers.weixin.qq.com/miniprogram/dev/reference/wxs/07basiclibrary.htmlcode

相關文章
相關標籤/搜索