小编Baz*_*Baz的帖子

你如何使用package.json中的'files'和'目录'属性?

如果a package.jsonfiles道具和/或directories道具:

  "files": [
    "./src/assets/fonts/"
  ],
  "directories": {
     "assets:": "./src/assets"
  }
Run Code Online (Sandbox Code Playgroud)

有哪些方法可以利用它们?文档没有提到一旦指定它们可以用它们做什么.

例如,文件文档说:

"files"字段是要包含在项目中的文件数组.如果您在数组中命名文件夹,那么它还将包含该文件夹中的文件.

"包含在您的项目中"是什么意思?包括在哪里?他们现在不是以前可以获得的?

目录部分,文档说:

将来,此信息可能会以其他创造性方式使用.

它现有的创作方式有哪些?

npm package.json

58
推荐指数
1
解决办法
1万
查看次数

NodeJS中的Firebase事务总是运行3次?

每当我在NodeJS中定义Firebase事务时,我注意到它总是运行三次 - 前两次使用空数据,然后最后第三次使用实际数据.这是正常/预期的吗?

例如这段代码:

firebaseOOO.child('ref').transaction(function(data) {
    console.log(data);
    return data;
});
Run Code Online (Sandbox Code Playgroud)

输出以下内容:

null
null
i1: { a1: true }
Run Code Online (Sandbox Code Playgroud)

我原以为它只打印最后一项.

要回答评论中的问题,回调也是如此:

firebaseOOO.child('ref').transaction(function(data) {
    console.log(data);
    return data;
}, function(error, committed, snapshot) {
    if (error) 
        console.log('failed');
    else if (!committed)
        console.log('aborted');
    else 
        console.log('committed');
    console.log('fin');
});
Run Code Online (Sandbox Code Playgroud)

产生以下输出:

null
null
i1: { a1: true }
committed
fin
Run Code Online (Sandbox Code Playgroud)

在发布问题之前,我已经阅读了交易如何工作的详细信息,因此我尝试将applyLocally设置为false,如下所示:

firebaseOOO.child('ref').transaction(function(data) {
    console.log('hit'); 
    return data; 
}, function(){}, false);
Run Code Online (Sandbox Code Playgroud)

但它仍然会击中3次(只是双重检查),所以我认为这是不同的东西.在交易之前获得"价值"确实"按预期"工作,因为它只会点击一次,而且不管applyLocally设置的是什么,所以我不确定applyLocally的作用是什么?这就是我在交易前获得价值的意思:

firebaseOOO.child('ref').once('value', function(data) {
    console.log('1');
    firebaseOOO.child('ref').transaction(function(data) {
        console.log('2');
        return data;
    });
});
Run Code Online (Sandbox Code Playgroud)

输出:

1
2
Run Code Online (Sandbox Code Playgroud)

@Michael:怎么能利用这种行为?事务主要是让数据使用自身来修改自身 - 原型增量++场景.因此,如果我需要将现有值10添加1,并继续使用11的结果,那么函数命中的前两次我将得到一个我需要处理的错误结果,最后是正确的结果第三次打到11.我如何利用这两个初始1?另一种情况(也许我不应该为此使用事务,但如果它像我预期的那样工作使代码更清晰)是插入一个值,如果它还不存在.如果事务只触发一次,则空值意味着该值不存在,因此您可以,例如,在这种情况下,将计数器初始化为1,否则将值1添加到任何值.有了噪声空值,这是不可能的.

似乎所有这一切都是为了简单地使用"一次"模式而不是经常使用?

交易模式: …

node.js firebase

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

是否可以在package.json中指定browserify config(而不是transform)?

在package.json中,我们可以指定如下所示的browserify转换:

"browserify": {
  "transform": ["babelify"]
}
Run Code Online (Sandbox Code Playgroud)

是否可以设置其他配置,例如debugdetectGlobals输入源文件,输出文件等。例如:

"browserify": {
  "debug": true,
  "detectGlobals": false,

  "transform": ["babelify"]
}
Run Code Online (Sandbox Code Playgroud)

谢谢

npm browserify package.json

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

什么触发android chrome显示"make page mobile-friendly"面板?

当我在Android chrome中加载http://www.thinkloop.com/article/state-driven-routing-react-redux-selectors/时,会在网站底部显示一个面板,询问我是否要将该页面设为移动设备-友好.

点击该选项在页面上的变化非常小,因为它已经非常适合移动设备.

触发这个问题的原因是什么?我如何解决它认为检测到的问题?

javascript mobile html5 android google-chrome

4
推荐指数
1
解决办法
2805
查看次数