问题标签 [ember-cli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2618 浏览

javascript - 在 ember-cli 应用程序中设置集成测试 - 如何访问 module() 和 visit()?

这个页面 ember-cli testing说“包含的测试演示了如何使用新的 ember-testing 包编写单元测试和验收/集成测试。”

但是,为了使集成测试正常工作,我需要找到modulevisit/或任何ember 测试助手。它们在哪里找到,我可以从哪里导入它们?


细节:

我发现最接近的modulemoduleFor,可以从ember-qunit. 模块不适合集成测试,因为我正在测试应用程序中的整个页面或一系列页面,而不是单个模型、路由、控制器、视图等。

我最好的猜测是visit可以在 Ember 本身中找到它,但我不确定从哪里导入它。

既不使用module也不使用moduleFor,我可以运行测试,但它们会出错:

ReferenceError:访问未定义

0 投票
3 回答
2542 浏览

javascript - 在 CI 模式下运行时如何获取访问 ember-cli 服务器的测试?

通过访问在浏览器中运行测试时localhost:4200/tests,测试能够访问测试服务器 API。

但是,在 CI 模式下运行测试时(使用 testem),它们无法访问测试服务器 API。

有没有办法做到这一点?


细节

在使用 ember-cli 生成的项目中,您可以扩展它运行的服务器(NodeJs with Express)。请参阅 中的说明/server/index.js。运行此命令后:

...此服务器在localhost:4200. 我已经这样做了,创建了一个服务器来响应localhost:4200/api在浏览应用程序时提供的所有 API 请求。

当我访问localhost:4200/tests在浏览器中运行的测试时,他们能够访问这些 API,并且运行没有任何问题。

但是,当我终止服务器并以 CI 模式 (testem) 运行测试时,使用以下命令:

... ember 应用程序使用 PhantomJs 在无头模式下运行,但该应用程序无法访问 API,导致大多数测试失败。

即使我在开始运行测试时让服务器保持运行,也会发生同样的事情。

我知道在测试本身中模拟 API 请求是惯例,起诉诸如 Sinon 或 mockjax 之类的东西。但是,这会重复我在测试服务器中已有的内容,我想避免这种情况。有没有办法让测试在 CI 模式下运行(使用 testem),并且可以访问我的测试服务器?

0 投票
2 回答
896 浏览

javascript - 如何将 broccoli-compass 添加到 ember-cli v0.0.28?

我希望能够在ember-cli项目中使用 compass 将我的 SASS 预处理为 CSS。

这样做broccoli-sass是微不足道的,因为bower install broccoli-sass已经内置了对它的支持。

然而,这样做broccoli-compass是相当棘手的......如何?


细节:

之前已针对 ember-cli v0.0.23提出过这个问题;它的答案似乎已经过时 - 主要问题似乎是 ember-cli 抽象了很多东西,并使用 aBrocfile.js将其放入另一个文件中,因此解决方案与标准外观不同preprocessor.jsRegistryBrocfile.js


更新:

@saygun 已经回答了这个问题,该解决方案允许使用 broccoli-compass 编译 SCSS --> CSS。但是有几点需要注意:

  • 小问题:minifyCssmeber-cli 中现有的预处理器将不起作用。您需要配置 compass 来缩小它自己的 CSS。
  • 主要问题:如果 SCSS 文件引用图像,则生成的 CSS 文件包含指向图像的链接,其中路径位于 Broccoli 创建的临时树文件夹中。我不知道如何解决这个问题,并提出了一个后续问题:如何使用指南针在 ember-cli 中生成图像精灵?
0 投票
2 回答
6362 浏览

ember.js - Ember-CLI:找不到模块“broccoli-static-compiler”错误:找不到模块“broccoli-static-compiler”

有谁知道这个错误是什么意思?最重要的是:如何解决?

Cannot find module 'broccoli-static-compiler'Error: Cannot find module 'broccoli-static-compiler'

这发生在今天安装 ember-cli 新项目并尝试运行之后ember server

0 投票
1 回答
497 浏览

ember.js - Emberjs 从表单输入计算并显示答案

此处为超级编码 n00b。我正在尝试在 emberjs 中创建一个营养计算器。如果我有如下用户输入表单,我在哪里编写计算函数以及如何显示答案?

我会在控制器中编写函数吗?

在我的路由器中,我有以下内容,但我宁愿将输入表单和显示的计算保留在同一个模板 Nutritioncalc.hbs 上

谢谢。

0 投票
1 回答
327 浏览

ember.js - 从设计到开发:有通用的 EmberJS 工作流程吗?

这个问题本质上是主观的,但我对一个具体的事情很好奇,所以希望有一个像样的答案。

在我开始将其分解为把手、组件和模板之前,我往往有点过时,喜欢将所有页面创建为静态并以我喜欢的方式(或至少非常接近)进行设计。这主要是因为 Ember “入门”指南教会了我这个过程。

这是普遍的做法吗?

我是我公司的前端设计师和开发人员,基本上我有两个独立的工作流程,一个用于设计,一个用于开发/测试。

有没有办法将两者合并并获得一个简化的工作流程(也许是一个可以通过使用一些特殊标记将静态页面拆分为模板的 JS 任务??)

当您使用静态页面时,设计往往会更容易一些。开发(尤其是在使用 EAK 或 Ember-CLI 时)期望一切都是模块化和动态的。

这个问题有明确的答案吗?

我在Ember 论坛上发布了一个类似的问题,但没有得到太多的关注,所以我想我会在这里尝试。

0 投票
2 回答
2095 浏览

ember.js - 不能“ember server”但“npm start”可以工作

虽然我成功安装了 ember-cli,但我无法运行ember server. 它说-bash: ember: command not found。但是当我跑步时npm start,它起作用了。

根据package.json文件,npm start指的是ember server. 但为什么没有ember server工作?

0 投票
1 回答
705 浏览

ember.js - 在 Ember CLI 中注册自定义组件

我想在我的 Ember CLI 应用程序中使用ic-tabs组件。事实证明 ic-tabs 不会使用 Ember CLI 中自动解析的命名导出(所以我不能只在我的应用程序中使用 {{ic-tabs}} )。

我将如何使用初始化程序在我的应用程序中注册组件?

0 投票
2 回答
2422 浏览

ember.js - Ember CLI:ENOENT,没有这样的文件或目录 ember-data.js

我有一个新的 ember-cli 应用程序,我正在尝试使用 ember-cli 版本 0.0.32 创建一个 TodoMVC 版本。

在我的 models/todo.js 文件中,我有:

但是当我运行时出现ember server此错误:

我试过了:

  • npm cache clear
  • npm install
  • bower install

但似乎什么也没做。

0 投票
1 回答
332 浏览

javascript - 如何在不接触全局变量的情况下访问reopenClass 中的容器?

目前正在使用 ember-cli 构建 Ember.js 应用程序。

reopenClass模型中,我需要使用 Ember 数据“存储”:

我知道我可以使用全局变量,但是全局变量太脏了:

如何在类/静态函数中使用lookup或使用?lookupFactory