codecamp

Weex 环境中没有 BOM

BOM(Browser Object Model),即浏览器对象模型,是浏览器环境为 javascript 提供的接口。Weex 在原生端并不基于浏览器运行,不支持浏览器提供的 BOM 接口。

没有 ​window​ 、​screen​ 对象

Weex 中并未提供浏览器中的 window 和 screen 对象,不支持使用全局变量。如果是想要获取设备的屏幕或环境信息,可以使用 WXEnvironment 变量。

WXEnvironment

  • weexVersion​: WeexSDK 的版本。
  • appName​: 应用的名称。
  • appVersion​: 应用的版本。
  • platform​: 运行平台,可能的值是 ​Web​ 、​Android​ 、​iOS​ 之一。
  • osName​: 系统的名称。
  • osVersion​: 系统版本。
  • deviceWidth​: 设备宽度。
  • deviceHeight​: 设备高度。

没有 ​document​ 对象

在浏览器中 ​document​ 表示了当前活动的文档模型,在 Android 和 iOS 环境中并没有这个对象,也不支持与其相关的 DOM 操作。

没有 ​history​ 、​location​ 、​navigator​ 对象

  • history​ 保存了当前页面的历史记录,并且提供了前进后退操作。
  • location​ 记录了当前页面 URL 相关的信息。
  • navigator​ 记录了当前浏览器中的信息。

这些接口与浏览器自身的实现有关,可以控制页面的前进后退并且获取状态信息。虽然在 Android 和 iOS 中也有“历史”和“导航”的概念,但是它是用于多个管理视图之间的跳转的。换句话说,在浏览器中执行“前进”、“后退”仍然会处于同一个页签中,在原生应用中“前进”、“后退”则会真实的跳转到其他页面。

此外 Weex 也提供了 ​navigator​ 模块来操作页面的跳转,使用方法参考《navigator 导航控制》。


Weex 环境中没有 DOM
Weex 能够调用移动设备原生 API
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Weex 调试

Weex 集成Devtool到Android

Weex 集成Devtool到IOS

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }