【问题标题】:Pebble JavaScript卵石 JavaScript
【发布时间】:2016-05-27 00:01:56
【问题描述】:

我目前正在为我的 pebble time steel 编写手表应用程序,并且在尝试引入时间同步时正在苦苦挣扎。基本上到目前为止,我的代码将我所有的课程作为变量导入,并且我有一个 if-else 语句来决定今天是哪一天。

main.on('click', 'select', function(e) {
var d = new Date();
var n = d.getDay();
if (n == '1' ){
var h = d.getHours();
console.log(h);
var hm1 = 'm' + h;
console.log (hm1);
[hm1].show();
 }

这只是部分代码,我之前只使用过“lesson1.show”。我知道控制台日志不是必需的,但它们对于故障排除很有用(有时;D)。

var m9 = new UI.Card();
m9.title('Lesson 1');
m9.subtitle('Maths');
m9.body('08:55 - 09:54');

这就是我安排日子的方式,从我没有受过教育的头脑来看,这似乎可行,但事实并非如此。我得到的只是:

[PHONE] pebble-app.js:?: Timetable:343 21
[PHONE] pebble-app.js:?: Timetable:345 m21
[PHONE] pebble-app.js:?: Timetable:2221 JavaScript Error:
TypeError: [hm1].show is not a function
at null.<anonymous> (app.js:235:23)
at emitToHandlers (lib/emitter.js:121:17)
at Emitter.emit (lib/emitter.js:141:35)
at Window._emit (ui/window.js:274:12)
at Function.Window.emit (ui/window.js:286:17)
at Function.Window.emitClick (ui/window.js:301:17)
at Object.SimplyPebble.onPacket (ui/simply-pebble.js:1436:14)
at Array.SimplyPebble.onAppMessage (ui/simply-pebble.js:1480:18)
at Object.PebbleEventListener.dispatchEvent (webview_startup.js:143:50)

感谢任何帮助:D

【问题讨论】:

  • 您可能会从实际错误开始:[hm1].show is not a function。从您上面发布的内容来看,hm1 看起来您正在使用数组,因为[hm1] 并且数组类型没有方法.show()developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
  • 基于 pebble.js 文档 developer.pebble.com/docs/pebblejs 我猜你想要做的实际上是使用他们的 SDK 创建一个 UI.card (或来自 sdk 的其他东西)对象类型。然后对该对象使用 .show() 方法。
  • 是的,我已经这样做了,对此我很有信心,我的问题是使用变量作为 ui 卡的名称

标签: javascript pebble-watch cloudpebble


【解决方案1】:

如果有人正在寻找类似的问题,请使用 eval 语句,这有助于将变量组合为 javascript 函数

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-06-23
  • 2020-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-07
相关资源
最近更新 更多