小编T.J*_*ika的帖子

Dart 中的 List take() 与 getRange() 有什么区别

我想要some的前n 个元素List。据我所知,我有两个选择:take(n)getRange(0, n)

  1. 它们之间有什么区别?
  2. 我什么时候会使用一个(假设我总是想要前n 个元素)?

collections list dart

17
推荐指数
1
解决办法
6184
查看次数

appendHtml()不会附加完整的HTML-Dart

以下代码在DartPad中按预期工作,如下所示:

void main() {
  Element e = querySelector('table');

  String someValue = 'hello, world';
  int anotherValue = 23958;

  Element row = new Element.tr()
    ..appendHtml('''
      <td>$someValue</td>
      <td>$anotherValue</td>
    ''');

  e.append(row);
}
Run Code Online (Sandbox Code Playgroud)

飞镖盘

但是,当我使用dart2js(dart2js -c -o app.js app.dart)编译相同的代码并在同一页面上运行该代码时,创建<td>的完全被删除,最终得到:

<table>
  <tr>hello, world 23958</tr>
</table>
Run Code Online (Sandbox Code Playgroud)

当实际的.dart文件<script src="...">与Dartium(v39.0.2171.0 x64)一起使用时,会发生相同的问题。我正在使用Dart v1.11.1。


一些测试:

..appendHtml('''
  <td></td>
  <td>hi</td>
''');
Run Code Online (Sandbox Code Playgroud)

产量:

<table>
  <tr>hi</tr>
</table>
Run Code Online (Sandbox Code Playgroud)

这与上面相同:

..appendHtml('<td>hi</td>');
Run Code Online (Sandbox Code Playgroud)

我可以得到它给我想要的东西的唯一方法是:

..append(new Element.td()..text = someValue)
..append(new Element.td()..text = anotherValue.toString());
Run Code Online (Sandbox Code Playgroud)

html javascript dart

2
推荐指数
1
解决办法
440
查看次数

向存储为字节数组的整数添加值

将值添加(而不是附加)到字节数组的最佳方法是什么,其中该数组被视为单个整数?

例如:

let arr = [0xFF, 0x01, 0xC3, 0x43];
Run Code Online (Sandbox Code Playgroud)

假设arr可以是任意长度。例如,如果我将 350 添加到其中,则新数组应该是:[0xFF, 0x01, 0xC4, 0xA1]。我提出的解决方案仅在我们递增 1 时才有效,因此我需要在循环amount时间内调用该方法,这对于大的amount's可能效率低下(本示例使用Vec's 而不是数组):

fn increment_byte_vec(vec: Vec<u8>) -> Vec<u8> {
    let mut done = false;

    vec.iter().rev().map(|&v| {
        if done {
            v
        } else if v == 0xFF {
            0
        } else {
            done = true;
            v + 1
        }
    }).rev().collect::<Vec<_>>()
}
Run Code Online (Sandbox Code Playgroud)

我将如何调整上述内容以便函数可以接受amount参数?

arrays byte rust

2
推荐指数
1
解决办法
689
查看次数

标签 统计

dart ×2

arrays ×1

byte ×1

collections ×1

html ×1

javascript ×1

list ×1

rust ×1