小编Kyl*_*yll的帖子

Meteor.autorun vs Tracker.autorun?

Meteor.autorun和之间有什么区别Tracker.autorun

  • 他们只是别名吗?
  • 一个被弃用的?
  • 有没有一个人比另一个更好?

我很清楚this.autorun在模板生命周期回调中使用的区别,但已经看到这两个可以互换使用,只是想确保我没有错过任何技巧.

meteor meteor-tracker

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

在哪里可以获取有关JavaScript函数的对象参数语法的信息?

如果我想调用这样的函数:

moo({ a: 4 });
Run Code Online (Sandbox Code Playgroud)

通常,我必须这样表达我的函数定义:

function moo(myArgObj) {
    print(myArgObj.a);
}
Run Code Online (Sandbox Code Playgroud)

但是,这种出色的语法在spidermonkey中对于定义函数完全有效:

function moo({ a, b, c }) { // valid syntax!
    print(a); // prints 4
}
Run Code Online (Sandbox Code Playgroud)

这是什么功能?

javascript syntax destructuring ecmascript-6

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

我应该如何正确使用与猫鼬一起填充?

我正在学习一些节点,并一直在尝试使用猫鼬.目前,我的目标是学习如何使用填充.

我有一个projects定义并milestone要求:

projectSchema = new mongoose.Schema({
    id: String,
    title: String,
    description: String,
    owner: String,
    site: String,
    creation_date: Date,
    milestone_ids: Array,
    milestones: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: "Milestone"
    }]
})

Project = mongoose.model("Project", projectSchema)
milestones = require(__dirname + "/milestones.js")();
Run Code Online (Sandbox Code Playgroud)

然后我在以下的某个时候这样做projects.js:

Project.find(query, {}, {sort: {_id: -1}},
    function (error, results) {
        callback(results);
    }
).populate("milestones");
Run Code Online (Sandbox Code Playgroud)

我如何填充里程碑?


这是project来自mongo 的数据:

{
    "title": "sitename",
    "description": "online thing",
    "creation_date": {
        "$date": "2013-07-11T19:45:42.139Z"
    },
    "_id": {
        "$oid": "51df0b66dbdd7c4f14000001"
    },
    "milestones": …
Run Code Online (Sandbox Code Playgroud)

javascript populate mongoose node.js

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

如果我在package.js中使用api.imply,我是否必须对同一个包使用api.use?

构建流星包时,您可以添加如下文件:

api.use('fourseven:scss@0.9.4', ['client', 'server']);
Run Code Online (Sandbox Code Playgroud)

你也可以告诉meteor让包用户访问其他包,如下所示:

api.imply('fourseven:scss@0.9.4', ['client', 'server']);
Run Code Online (Sandbox Code Playgroud)

在文档中,不清楚是否暗示一个包也使它可用.例如,我不确定这样做是否多余:

api.use('fourseven:scss@0.9.4', ['client', 'server']);
api.imply('fourseven:scss@0.9.4', ['client', 'server']);
Run Code Online (Sandbox Code Playgroud)

packages meteor

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

如何在#each完成后执行回调?

#each完成后我遇到回调问题.我有一个名为"content"的模板:

<template name="content">
{{#if Template.subscriptionsReady}}
    {{#each currentData}}
        <div data-cid="{{this._id}}"></div>
    {{/each}}
{{else}}
    Loading...
{{/if}}
</template>
Run Code Online (Sandbox Code Playgroud)

起初我等待订阅,当有可用时,我遍历我的Collection {{#each}}并追加div.我需要的是当for-each循环完成时(换句话说DOM就绪)的一种回调.

Template.content.onRendered()
Run Code Online (Sandbox Code Playgroud)

- >触发到早期

我还尝试在{{each}}之后附加一个图像并在其中激活一个函数onload:

<img style="height:0;width:0" src="*mysource*" onload="callback()">
Run Code Online (Sandbox Code Playgroud)

- >有时工作但不知道可靠吗?

有没有办法得到这个回调?我不担心改变这个模板的结构,如果这带来了解决方案.

javascript meteor spacebars

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

在ES6中吊装的目的是什么?

我知道这let将被提升到块的顶部,但是在初始化之前访问它将抛出ReferenceError到期Temporal Dead Zone

例如:

console.log(x);   // Will throw Reference Error
let x = 'some value';
Run Code Online (Sandbox Code Playgroud)

但是像这样的代码片段会运行而不会出错:

foo(); // alerts foo;
function foo(){    // foo will be hoisted 
  alert("foo");
} 
Run Code Online (Sandbox Code Playgroud)

我的问题

let当它在访问时会出现错误时,将其提升到顶部的目的是什么?也有var遭受TDZ的影响,我知道什么时候会抛出,undefined但是因为TDZ?

javascript ecmascript-6

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

如何用CSS拆分网页?

是否可以使用CSS进行分割屏幕(水平),以便用户可以浏览屏幕上方切片上的部分网站并浏览屏幕下方的另一部分?

html css

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

如何选择Chrome扩展程序以在使用Selenium时启用

我使用Selenium网络驱动程序开发使用Chrome作为浏览器的自动化测试.我正在使用Python.

当Selenium打开Chrome时,我的Chrome浏览器上有一个扩展程序.问题是,当Selenium打开Chrome时,默认情况下会禁用所有扩展程序.

当Selenium运行时,如何在Chrome浏览器上启用所有或某个扩展程序?

python selenium webdriver web-testing google-chrome-extension

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

Meteor.js使用哪种架构模式?

我非常清楚MVC模式,但Meteor本身似乎没有像它那样的任何模式.

在开发Meteor应用程序时使用哪种架构模式?

architecture model-view-controller design-patterns meteor

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

是否可以将Symbol.species用于普通对象?

MDN给出了下面的工作实例Symbol.species:

class MyArray extends Array {
  // Overwrite species to the parent Array constructor
  static get [Symbol.species]() { return Array; }
}
var a = new MyArray(1,2,3);
var mapped = a.map(x => x * x);

console.log(mapped instanceof MyArray); // false
console.log(mapped instanceof Array);   // true
Run Code Online (Sandbox Code Playgroud)

ECMAScript的2015年规范说:

一个函数值属性,它是用于创建派生对象的构造函数.

我理解它的方式主要用于Duck-Type以某种方式自定义对象以欺骗instanceof操作员.
它似乎非常有用,但我没有设法在普通对象上使用它(FF 44.0a2):

let obj = {
  get [Symbol.species]() {
    return Array
  }
}

console.log(obj instanceof Array)  //false =(
console.log(obj instanceof Object) //true
Run Code Online (Sandbox Code Playgroud)

有没有办法Symbol.species …

javascript ecmascript-6

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