小编Yoo*_*omi的帖子

来自 MaterialApp 构建器的导航器

我正在尝试将我的整个应用程序嵌入到 AppBar 和页脚中。所以我尝试为我的 MaterialApp 提供一个自定义构建器,它看起来像这样(为了清晰起见,我用按钮替换了页脚和应用栏)

import 'package:epicture/scenes/Landing.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'My App',
      initialRoute: '/',
      builder: (context, child) => Container(
          child: FlatButton(
                child: Text('Click me'),
                onPressed: () => Navigator.of(context).pushNamed('/app'),
      )),
      // In my current code
      builder: (context, child) => Embedder(child),
      routes: <String, WidgetBuilder>{
        '/': (context) => Landing(),
        '/app': (context) => Text('My App !'),
      },
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

但是在按下“单击我”按钮时,会出现一个错误,指出上下文没有导航器

the context used to push or pop …

dart flutter

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

在C#中浏览动态对象(json)

我从HTTP GET请求获得一个json,看起来像用"NewtonSoft.Json"解析后:

dynamic data = JsonConvert.DeserializeObject(responseString);
Run Code Online (Sandbox Code Playgroud)

responseString的位置是:

{"name1":{"id":123456789,"name":"nickname","profileIconId":1114,"summonerLevel":30}}
Run Code Online (Sandbox Code Playgroud)

如您所见,名称每次都会更改,我想知道如何data.name1.name在每次更改name1时更改这一点.

如果json看起来像我怎么办:

{"name1":{"id":123456789,"name":"nickname","profileIconId":1114,"summonerLevel":30},"name2":{"id":123456789,"name":"nickname","profileIconId":948,"summonerLevel":30}}
Run Code Online (Sandbox Code Playgroud)

c# json.net

6
推荐指数
1
解决办法
3710
查看次数

获取 id 数组中具有匹配 id 的所有元素

我在 Express/React Web 应用程序中使用 Mongoose,并将数据存储在 Mongo 数据库中。

我将“歌曲”存储在歌曲集合中,用户有一个包含他听过的歌曲的 id 的数组。

然后为了呈现他一直在听的内容,我必须将数组与歌曲 id 与歌曲集合中的歌曲 id 链接起来。

我目前正在使用

song.find({_id: {$in: ids}}).exec(callback)
Run Code Online (Sandbox Code Playgroud)

获取与 'ids' 数组中的 id 匹配的所有歌曲。如果用户一次又一次地听这首歌,“ids”数组可能多次包含相同的 id。

问题是猫鼬只返回与 id 对应的歌曲一次,因此歌曲不会多次显示。有没有办法告诉猫鼬将重复的 id 传递给回调函数?

总结:

ids: ['a', 'a', 'a', 'b', 'c']
song.find({_id: {$in: ids}}).exec(callback)
dataPassedToCallback: [songA, songB, songC]
Run Code Online (Sandbox Code Playgroud)

期待

dataPassedToCallback: [songA, songA, songA, songB, songC]
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js

6
推荐指数
1
解决办法
7535
查看次数

与 IPFS 相比,JS-IPFS 的性能较低

我正在使用 js-ipfs 服务器端在 IPFS 上“上传”文件,但它似乎比命令行ipfs daemonipfs add someFile.

在服务器端,我实例化一个Ipfs对象,然后尝试storeData使用文件内容的路径和缓冲区。当我的服务器启动时,我连接到三个集群:

Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/ipfs/QmTBoDWXviw7eRKeDGbp3wU2PxAw1epPxax6mp8uY6CEEW
Swarm listening on /ip4/127.0.0.1/tcp/4002/ipfs/QmTBoDWXviw7eRKeDGbp3wU2PxAw1epPxax6mp8uY6CEEW
Swarm listening on /ip4/10.19.77.89/tcp/4002/ipfs/QmTBoDWXviw7eRKeDGbp3wU2PxAw1epPxax6mp8uY6CEEW
Run Code Online (Sandbox Code Playgroud)

我这样使用IPFS:

const IPFS = require('ipfs');
const node = new IPFS();

class Ipfs {

    constructor() {
        node.on('error', e => console.log(e))
        node.on('start', () => console.log('Node started !'))
        node.on('ready', () => console.log('Node is ready !'))
    }

    storeData(content, path) {
        return new Promise((resolve, fail) => {
            let encData = {
                path: path,
                content: content,
            }; …
Run Code Online (Sandbox Code Playgroud)

javascript ipfs

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

标签 统计

javascript ×2

c# ×1

dart ×1

flutter ×1

ipfs ×1

json.net ×1

mongodb ×1

mongoose ×1

node.js ×1