> Cordova中文手册 > Cordova 全球化

此插件用于获取有关用户语言区域语言,日期和时区,货币等的信息。

步骤1 - 安装全球化插件

打开命令提示符并通过键入以下代码安装插件。

C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-globalization

步骤2 - 添加按钮

我们将向 index.HTML 添加几个按钮,以便能够调用我们稍后将创建的不同方法。

<button id = "getLanguage">LANGUAGE</button>
<button id = "getLocaleName">LOCALE NAME</button>
<button id = "getDate">DATE</button>
<button id = "getCurrency">CURRENCY</button>

步骤3 - 添加事件监听器

事件监听器将被添加到 index.js 文件中的 getDeviceReady 函数中,以确保我们的应用程序和Cordova在我们开始使用它之前加载。

document.getElementById("getLanguage").addEventListener("click", getLanguage);
document.getElementById("getLocaleName").addEventListener("click", getLocaleName);
document.getElementById("getDate").addEventListener("click", getDate);
document.getElementById("getCurrency").addEventListener("click", getCurrency);

步骤4A - 语言功能

我们使用的第一个函数返回客户端设备的BCP 47语言标签。我们将使用 getPreferredLanguage 方法。该函数有两个参数 onSuccess onError 我们在 index.js 中添加此函数。

function getLanguage() {
   navigator.globalization.getPreferredLanguage(onSuccess, onError);

   function onSuccess(language) {
      alert('language: ' + language.value + '\n');
   }

   function onError(){
      alert('Error getting language');
   }
	
}

一旦按下 LANGUAGE 按钮,警报将显示在屏幕上。

Cordova 全球化

步骤4B - 区域功能

此函数返回客户端区域设置的BCP 47标签。 此函数与我们之前创建的函数类似。 唯一的区别是,我们这次使用 getLocaleName 方法。

function getLocaleName() {
   navigator.globalization.getLocaleName(onSuccess, onError);

   function onSuccess(locale) {
      alert('locale: ' + locale.value);
   }

   function onError(){
      alert('Error getting locale');
   }
	
}

当我们点击 LOCALE 按钮时,提醒将显示我们的区域设置标签。

Cordova 全球化

步骤4C - 日期函数

此功能用于根据客户端的区域设置和时区设置返回日期。date 参数是当前日期, options 参数是可选的。

function getDate() {
   var date = new Date();

   var options = {
      formatLength:'short',
      selector:'date and time'
   }

   navigator.globalization.dateToString(date, onSuccess, onError, options);

   function onSuccess(date) {
      alert('date: ' + date.value);
   }

   function onError(){
      alert('Error getting dateString');
   }
	
}

我们现在可以运行应用程序,然后按 DATE 按钮查看当前日期。

Cordova 全球化

我们将显示的最后一个功能是根据客户端的设备设置和ISO 4217货币代码返回货币值。你可以看到这个概念是一样的。

function getCurrency() {
   var currencyCode = 'EUR';
   navigator.globalization.getCurrencyPattern(currencyCode, onSuccess, onError);

   function onSuccess(pattern) {
      alert('pattern: '  + pattern.pattern  + '\n' +
         'code: '     + pattern.code     + '\n' +
         'fraction: ' + pattern.fraction + '\n' +
         'rounding: ' + pattern.rounding + '\n' +
         'decimal: '  + pattern.decimal  + '\n' +
         'grouping: ' + pattern.grouping);
   }

   function onError(){
      alert('Error getting pattern');
   }
	
}

CURRENCY 按钮将触发警报,显示用户的货币模式。

Cordova 全球化

此插件提供其他方法。你可以看到下面的表中所有的。

方法 参数 细节
getPreferredLanguage onSuccess,onError 返回客户端当前的语言。
getLocaleName onSuccess,onError 返回客户端的当前语言环境设置。
dateToString 日期,onSuccess,onError,选项 根据客户的区域设置和时区返回日期。
stringToDate dateString,onSuccess,onError,options 根据客户端的设置解析日期。
getCurrencyPattern currencyCode,onSuccess,onError 返回客户的货币模式。
getDatePattern onSuccess,onError,options 返回客户端的日期模式。
getDateNames onSuccess,onError,options 根据客户端的设置返回月,周或天的名称数组。
isDayLightSavingsTime date,successCallback,errorCallback 用于根据客户端的时区和日历确定夏令时是否活动。
getFirstDayOfWeek onSuccess,onError 根据客户端设置返回一周的第一天。
numberToString number,onSuccess,onError,options 根据客户端的设置返回number。
stringToNumber string,onSuccess,onError,options 根据客户端的设置解析一个数字。
getNumberPattern onSuccess,onError,options 根据客户端的设置返回数字模式。