小编Jan*_*nkt的帖子

Mongod Service开始退出,代码为100

问题

我的mongo服务不再启动了:

root@machine ~ # service mongod start
root@machine ~ # service mongod status
? mongod.service - High-performance, schema-free document-oriented database
   Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2017-08-15 12:03:51 CEST; 2s ago
     Docs: https://docs.mongodb.org/manual
  Process: 26942 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=100)
 Main PID: 26942 (code=exited, status=100)

Aug 15 12:03:50 machine systemd[1]: Started High-performance, schema-free document-oriented database.
Aug 15 12:03:51 machine systemd[1]: mongod.service: Main process exited, code=exited, status=100/n/a
Aug 15 12:03:51 machine systemd[1]: mongod.service: …
Run Code Online (Sandbox Code Playgroud)

service mongodb ubuntu-16.04

17
推荐指数
2
解决办法
3万
查看次数

deno 将 JSON 文件作为模块导入

我有一个导入 json 的简单文件:

主文件

import json from './file.json'
Run Code Online (Sandbox Code Playgroud)

但是 deno 在导入 json 文件时会抛出以下错误:

$ deno run main.ts
Compile file:///home/path/to/project/main.ts
error: Uncaught TypeError: Cannot resolve extension for "file:///home/path/file.json" with mediaType "Json".
    at getExtension ($deno$/compiler.ts:218:13)
    at new SourceFile ($deno$/compiler.ts:263:22)
    at Function.addToCache ($deno$/compiler.ts:339:16)
    at processImports ($deno$/compiler.ts:743:31)
    at async processImports ($deno$/compiler.ts:753:7)
    at async compile ($deno$/compiler.ts:1316:31)
    at async tsCompilerOnMessage ($deno$/compiler.ts:1548:22)
    at async workerMessageRecvCallback ($deno$/runtime_worker.ts:74:9)
Run Code Online (Sandbox Code Playgroud)

文件路径正确且文件是有效的 JSON。默认情况下Typescript 编译器应该允许这样做

我还尝试明确启用resolveJsonModule

配置文件

{
  "compilerOptions": {
    "resolveJsonModule": true
  },
  "include": [
    "**/*"
  ] …
Run Code Online (Sandbox Code Playgroud)

json module deno

11
推荐指数
3
解决办法
2610
查看次数

Meteor包导入来自npm包的css文件,该文件仅使用tmeasday标记为依赖:check-npm-versions

很长一段时间以来,这个包就是tmeasday:check-npm-versions,它允许为Meteor包定义一个隐式的npm包依赖.

如果您正在编写一个依赖于给定npm包的Atmosphere包,请使用此包,该包安装在您安装的项目的应用程序级别.

现在我正在编写一个Meteor软件包,比如说me:my-package依赖于npm软件包some-package.这个npm包需要我手动导入这些样式.

该文件夹位于some-package/style/main.less.

我试图在包中导入文件,但无法将其导入到我的包的less文件中:

@import "some-package/style/main";
@import "{}/some-package/style/main";
@import "node_modules/some-package/style/main";
@import "{}/node_modules/some-package/style/main";
Run Code Online (Sandbox Code Playgroud)

所有抛出相同的错误:

While processing files with less (for target web.browser):
packages/me:my-package/style.less:1: Unknown import: <one of the path's above>
Run Code Online (Sandbox Code Playgroud)

这里有一个明显的原因:Meteor包通常要求我通过添加文件,api.addFiles但包对npm包没有"真正的依赖性"来导入这个文件.

我可以将导入样式的"责任"移动到将使用"me:my-package"的应用程序,因为它也必须安装npm包.

将以下行放入将使用的应用程序的css me:my-package实际工作:

@import "/node_modules/some-package/style/main.less";
Run Code Online (Sandbox Code Playgroud)

但是如果软件包使用它,这也会强制应用程序安装更少或sass(在我的情况下更少).

有人设法以一种用户友好的方式解决这个问题吗?

dependencies meteor meteor-packages

9
推荐指数
1
解决办法
231
查看次数

Meteor Blaze在Template.onCreated中访问Template.contentBlock

我正在为孩子们写一个定制的Blaze块助手:

<template name="parent">
    {{> Template.contentBlock ..}}
</template>

<template name="child">
    {{> Template.contentBlock ..}}
</template>
Run Code Online (Sandbox Code Playgroud)

我的预期用例是拥有一个带有任意子节点的模板,我在html文件中定义.

{{#parent}}

  {{#child id="child1" title="Child 1"}}
    <p>This is content of child 1</p>
  {{/child}}

  {{#child id="child2" title="Child 2"}}
    <p>This is content of child 2</p>
  {{/child}}

  {{#child id="childN" title="Child N"}}
    <p>This is content of child N</p>
  {{/child}}

{{/parent}}
Run Code Online (Sandbox Code Playgroud)

到目前为止没问题.但是,在父模板中onCreated/ autorun我想要访问child模板.我想使用这些数据在父模板元素中动态创建

Template.parent.onCreated(function () {
    const instance = this;
    instance.state = new ReactiveDict();

    instance.autorun(function () {
        const contentBlocks = // how?
        instance.state.set("children", contentBlocks);
    });
});

Template.parent.helpers({ …
Run Code Online (Sandbox Code Playgroud)

javascript meteor spacebars meteor-blaze html-templates

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

Trix 编辑器定义自定义附件样式

我向 Trix 编辑器添加了一个图像,生成了以下代码:

<figure 
    data-trix-attachment="{lots of data}" 
    data-trix-content-type="image/jpeg"
    data-trix-attributes="{'presentation':'gallery'}" 
    class="attachment attachment--preview attachment--jpg">
    <img src="http://myhost/myimage.jpg" width="5731" height="3821">
    <figcaption class="attachment__caption">
        <span class="attachment__name">cool.jpg</span> <span class="attachment__size">4.1 MB</span>
    </figcaption>
</figure>
Run Code Online (Sandbox Code Playgroud)

当我在基于 Bootstrap 的页面上显示从编辑器生成的 HTML 时,图像显然扩展了屏幕(参见widthheight),我想删除这些道具并将img-fluid类分配给它。

所以基本上我想使用配置:

Trix.config.css.attachment = 'img-fluid'
Run Code Online (Sandbox Code Playgroud)

但这确实 a) 不会将attachment类更改为img-fluid,也不会将更改应用于图像,而是将figure.

我想避免每次显示内容时都使用 jQuery 并遍历所有内容figures,然后在运行时操作图像的属性。

添加附件时没有定义这些样式的解决方案吗?

html javascript css trix

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

从部分响应播放音频并在完成后保存缓冲区

背景

我正在编写一个服务来以块的形式提供静态音频文件,以支持带宽较低的用户的流畅体验。一旦文件完全流式传输(块序列是线性的,用户将无法“跳转”范围),我想将文件保存到本地缓存中(使用 localforage,但这不是这个问题的一部分)到稍后从那里加载缓存文件并节省带宽。

问题

根据我目前的知识/代码/工具状态,只能执行以下操作之一:

A) 使用HTMLAudioElement流式传输音频

const audio = new Audio()
audio.src = url
audio.preload = 'auto'
audio.load()
Run Code Online (Sandbox Code Playgroud)

HTML5 音频在内部处理部分响应,本身工作正常,但一旦完全加载,我就无法访问底层缓冲区来保存文件。因此,如果不单独下载(在另一个请求中),我将无法在本地缓存文件。

B) 下载/获取整个文件,然后播放

fetch(url, options) // set content header to array buffer
  .then((response) => {
    var blob = new Blob([response.value], { type: 'audio/mp3' })
    var url = window.URL.createObjectURL(blob)
    const audio = new Audio()
    audio.src = url
    audio.play()
  })
Run Code Online (Sandbox Code Playgroud)

这使我可以访问数据,以便我可以缓存它以供离线重用。但是我放弃了流媒体选项,这使得几乎不可能在没有长时间等待的情况下播放更大的文件。

C) 使用自定义加载器并使用 WebAudio API 播放每个块

由于 A 和 B 不够用,我编写了一个自定义 loader,它加载块(工作正常),并使用当前块(作为 ArrayBuffer)作为数据分派事件。它还在结束时调度另一个事件,该事件返回所有块,因此我可以从中创建一个 blob:

const chunkSize …
Run Code Online (Sandbox Code Playgroud)

javascript streaming html5-audio web-audio-api

6
推荐指数
0
解决办法
1903
查看次数

升级后,为什么我的Meteor应用程序不再启动?

为了更新我的应用程序中的所有meteor包,我输入命令meteor update --all-packages.许多软件包现在似乎都更新到了他们的最新版本,但是现在当我尝试使用启动我的应用程序时meteor --port 8000,应用程序的启动似乎Starting your app /无限期地停止...这意味着我的应用程序永远不会真正启动!

在下面找到说明我的经历的图片:

在此输入图像描述

有谁知道为什么会这样,也许可以解决这个问题?期待您的帮助!

在下面找到更多细节.

以下是我喂食后的反应: meteor update --all-packages

Changes to your project's package version selections from updating the release:


accounts-base              upgraded from 1.3.1 to 1.4.3
accounts-facebook          upgraded from 1.2.1 to 1.3.2
accounts-google            upgraded from 1.2.0 to 1.3.2
accounts-oauth             upgraded from 1.1.15 to 1.1.16
accounts-password          upgraded from 1.4.0 to 1.5.1
accounts-ui                upgraded from 1.1.9 to 1.3.1
accounts-ui-unstyled       upgraded from 1.2.1 to 1.4.1
allow-deny                 upgraded from 1.0.6 to 1.1.0 …
Run Code Online (Sandbox Code Playgroud)

upgrade meteor meteorite

6
推荐指数
0
解决办法
365
查看次数

将 JavaScript 异步和 igraph 代码移植到 R?

我正在努力将一些 JavaScript 代码(包括异步和图形功能)移植到 R。请帮助!

这是我尝试移植的内容:

import jsonpFetch from "./jsonpFetch";
import bus from '../bus';

/**
 * This function builds a graph from google's auto-suggestions.
 */
export default function buildGraph(entryWord, pattern, MAX_DEPTH, progress) {
  entryWord = entryWord && entryWord.trim();
  if (!entryWord) return;

  entryWord = entryWord.toLocaleLowerCase();

  const insertPosition = pattern.indexOf('...');
  if (insertPosition < 0) {
    throw new Error('Query pattern is missing "..."');
  }
  const queryPosition = pattern.indexOf('[query]');
  if (queryPosition < 0) {
    throw new Error('Query pattern is missing "[query]" keyword');
  }

  if (insertPosition …
Run Code Online (Sandbox Code Playgroud)

javascript r igraph dplyr

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

检查package.json是否在shell脚本中具有具有特定名称的脚本,而不使用额外的NPM包

我正在测试一个更大的NPM包库,它包含私有包,公共包的变更分叉或公共包的下游.

lib
  |-package_1
  |-package_2
  |-package_N
Run Code Online (Sandbox Code Playgroud)

所以我通过我的包lib运行一个shell脚本,它在每个目录中运行npm test命令.

for D in *; do
    if [ -d "${D}" ]; then
        echo "================================="
        echo "${D}"   # PRINT DIRECTORY NAME
        echo "================================="

        cd $D
        npm run tests
        cd ../  # LEAVE PACKAGE DIR
    fi
done
Run Code Online (Sandbox Code Playgroud)

遗憾的是,在程序包的JSON文件中没有用于命名tests-script的唯一模式.某些程序包在test具有监视模式的脚本下运行,并且其cli脚本具有不同的名称(主要是命名testcli).

我想做的是类似下面的伪代码:

if has-testcli-script then
    npm run testcli
else
    npm run test
Run Code Online (Sandbox Code Playgroud)

我现在假设,只有这两个选项存在.我对如何知道脚本是否存在感兴趣,而不安装额外的全局NPM包.

bash shell node.js npm package.json

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

eslint 禁止递增或递减运算符的目的是什么

eslint 文档描述了一种禁止递增和递减运算符++和 的方法--

描述包括以下句子:这些运算符

受自动分号插入的影响,空白的差异可能会改变源代码的语义。

通过阅读本文,我仍然不明白为什么禁止它们是一个好习惯。我可以想到转译或解释器问题,但我没有明确的想法。

此外,我在几乎所有教程、文档甚至大学课程中都学会了如何使用这些运算符。

以下文档也没有表达对它们的担忧:

MDN

微软软件定义网络

W3学校

我现在很好奇它有什么目的禁止它们的使用。

javascript rules increment decrement eslint

5
推荐指数
0
解决办法
576
查看次数