我有一个需要模型实例的组件。型号名称为WorkflowState。如何创建workflowstate的实例并注入组件。
我需要使用以下方法创建工作流状态:
WorkflowState.create('some data')
因为构造函数有一些需要运行的逻辑。
我无法访问WorkflowState。我尝试添加像这样的导入语句
import WorkflowState from "../../../app/models/wokrflow-state";
但是没有编译......
知道我该怎么做吗?
我的测试看起来像这样:
var stateString = 'some data';
var state = WorkflowState.create(JSON.parse(stateString));
var component = this.subject({
workflow: {state: state}
});
// do some testing on the component
请帮助。感谢。
答案 0 :(得分:4)
理想情况下,组件的测试应与其他单元隔离,如本例中的模型。您可以传递具有测试特定行为所需状态的假模型。
Ember.Object.create({ // the state you need })
并将其传递给组件
如果你真的需要传递一个真实的模型,你将不得不做更多的事情,创建一个容器并设置一个商店等,因为你不能直接在模型上调用.create,希望你可以避免所有的这一点。