小编DoK*_*DoK的帖子

在目标c中从id到class的动态类型转换

我想在Objective C中动态转换并访问实例属性.这里有一个伪代码:

id obj;
if (condition1)
    obj = (Class1*)[_fetchedResults objectAtIndex:indexPath.row];
else
    obj = (Class2*)[_fetchedResults objectAtIndex:indexPath.row];

NSNumber *latitude = obj.latitude;
Run Code Online (Sandbox Code Playgroud)

然后编译器告诉我以下内容: 在'__strong id'类型的对象上找不到属性'latitude'

Class1和Class2都是核心数据实体,并且具有几乎相同类型的属性.在condition1中_fetchedResults返回Class1类型的对象,在condition2中_fetchedResults返回Class2类型的对象.

有人能给我一个如何解决这类问题的提示吗?

谢谢!

objective-c dynamic-typing

7
推荐指数
1
解决办法
9979
查看次数

线条,圆圈和其他形状?

是否可以绘制lines,circlesother shapes使用pdfmake?如果是,是否有documentation样品?我想更换jsPDFpdfmake.

pdfmake

7
推荐指数
3
解决办法
4651
查看次数

格式化MomentJS持续时间超过24小时

我想格式化总计工作时间,例如49.7549:45.

当我使用这样的持续时间:

const dur = moment.duration(49.75, 'hours').asMilliseconds();
moment.utc(dur).format("HH:mm:ss") // 01:45:00
Run Code Online (Sandbox Code Playgroud)

我会收到01:45:00而不是49:45:00

有没有办法在不减少日期的情况下格式化(而不是HH)持续时间?

javascript momentjs

7
推荐指数
2
解决办法
4223
查看次数

Polymer元素注册前的JavaScript初始化

Polymer v0.5v1.0的注册过程Polymer elements似乎有所不同.之前Polymer v1.0我们可以执行JavaScript代码index.html来初始化我们所需的所有对象Polymer elements.这是一个非常重要的细节,因为data-bindingPolymer 只有当有限的对象初始化工作正确FIRST.这意味着以下内容:

例如,如果你想绑定一个对象在Polymer element{{ }}[[ ]],对象必须在之前定义Polymer element注册!看到:

<dom-module id="my-elem">
  <template>
    <div>This should be my bounded object: <b>{{obj.name}}</b></div>
  </template>
  <script>
    Polymer({
    is: 'my-elem',
    ready: function () {
      // Global initialized object!!!
      // app.obj ==> app.obj = { name: 'Great', info: 'Additional info!!!' };
      this.obj = app.obj;
    }
    ...      
  </script> …
Run Code Online (Sandbox Code Playgroud)

javascript initialization object polymer-1.0

5
推荐指数
1
解决办法
984
查看次数

使用 Sinon.js 测试 navigator.browserLanguage 或 navigator.language

如何使用sandbox.stub测试框架Sinon来覆盖egnavigator.languagenavigator.userAgent进行测试?

当我尝试使用以下内容时:

suite('agent', function () {
  var sandbox;
  setup(function () {
    // create sandbox environment for mocking about
    sandbox = sinon.sandbox.create();
  });
  teardown(function () {
    // restore the environment as it was before
    sandbox.restore();
  });
  test('language', function () {
    assert.equal(au.env.agent.language, navigator.language);
    if (!navigator.language) assert.equal(au.env.agent.language, 'de');
    var lang = "test_URK";
    sandbox.stub(window.navigator, 'language', lang);
    assert.equal(au.env.agent.language, lang);
  });
});
Run Code Online (Sandbox Code Playgroud)

然后我会收到以下错误:无法存根不存在的自有属性语言

这些存根均未按预期工作:

  • sandbox.stub(window.navigator, '语言', lang);
  • sandbox.stub(navigator, 'browserLanguage', lang);

正在模拟导航器对象

有什么提示吗?

javascript unit-testing mocha.js sinon web-component-tester

5
推荐指数
1
解决办法
3954
查看次数

纸元素之间的状态数据绑定

是否可以动态地将纸张复选框[已检查|未检查]的状态(属性)绑定到纸张输入元素内的[readonly | disabled]属性?这是我到目前为止的实现:

<template repeat="{{item in lphasen}}">
  <div center horizontal layout>
    <paper-checkbox unchecked on-change="{{checkStateChanged}}" id="{{item.index}}"></paper-checkbox>
      <div style="margin-left: 24px;" flex>
        <h4>{{item.name}}</h4>
      </div>
      <div class="container"><paper-input disabled floatingLabel id="{{item.index}}" label="LABEL2" value="{{item.percent}}" style="width: 120px;"></paper-input></div>
  </div>
</template>
Run Code Online (Sandbox Code Playgroud)

行为应如下所示:当用户取消选中纸张复选框时,同一行中的纸张输入元素应禁用和/或只读,反之亦然.是否可以直接使用双胡子绑定多个元素,或者我必须以某种方式迭代DOM以手动设置纸张输入元素的属性?如果是,有人可以解释一下吗?

data-binding web-component polymer

3
推荐指数
1
解决办法
5704
查看次数