问题标签 [ember-cli-addons]

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 投票
3 回答
2011 浏览

ember-cli - 更新 ember-cli 插件后缺少模板处理器

更新私有 ember-cli 插件时,我从终端收到以下错误:

➜ fly-blankslate git:(chore-ember-110) ember server --port=4300 version: 0.2.0-beta.1 Missing template processor Error: Missing template processor at module.exports.preprocessTemplates (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/preprocessors.js:149:11) at Class.Addon.compileTemplates (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/models/addon.js:434:12) at Class.Addon.compileAddon (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/models/addon.js:456:28) at Class.Addon.treeForAddon (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/models/addon.js:382:24) at Class._treeFor (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/models/addon.js:282:31) at Class.treeFor (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/models/addon.js:253:19) at EmberAddon.<anonymous> (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/broccoli/ember-app.js:307:20) at Array.map (native) at EmberAddon.EmberApp.addonTreesFor (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/broccoli/ember-app.js:305:30) at EmberAddon._addonTree (/Users/alvincrespo/workspace/fly-blankslate/node_modules/ember-cli/lib/broccoli/ember-app.js:597:38) ➜ fly-blankslate git:(chore-ember-110)

ember init在插件内部运行并更新了 bower.json 和 package.json:

包.json

{ "name": "fly-blankslate", "version": "0.0.0", "description": "The default blueprint for ember-cli addons.", "directories": { "doc": "doc", "test": "tests" }, "scripts": { "start": "ember server", "build": "ember build", "test": "ember test" }, "repository": "", "engines": { "node": ">= 0.10.0" }, "author": "", "license": "MIT", "devDependencies": { "broccoli-asset-rev": "^2.0.0", "ember-cli": "0.2.0-beta.1", "ember-cli-babel": "^4.0.0", "ember-cli-app-version": "0.3.1", "ember-cli-content-security-policy": "0.3.0", "ember-cli-dependency-checker": "0.0.7", "ember-cli-htmlbars": "0.7.4", "ember-cli-ic-ajax": "0.1.1", "ember-cli-inject-live-reload": "^1.3.0", "ember-cli-qunit": "0.3.8", "ember-cli-uglify": "1.0.1", "ember-data": "1.0.0-beta.15", "ember-export-application-global": "^1.0.2", "express": "^4.8.5", "glob": "^4.0.5" }, "keywords": [ "ember-addon" ], "ember-addon": { "configPath": "tests/dummy/config" } }

bower.json

{ "name": "fly-blankslate", "dependencies": { "jquery": "^1.11.1", "ember": "1.10.0", "ember-data": "1.0.0-beta.15", "ember-resolver": "~0.1.11", "loader.js": "ember-cli/loader.js#1.0.1", "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3", "ember-cli-test-loader": "ember-cli-test-loader#0.1.3", "ember-load-initializers": "ember-cli/ember-load-initializers#0.0.2", "ember-qunit": "0.2.8", "ember-qunit-notifications": "0.0.7", "qunit": "~1.17.1", "fly-css-framework": "git@github.com:customerio/fly-css-framework.git" } }

有任何想法吗?创建新插件时我也看到了这一点:

https://github.com/alvincrespo/test-templates

0 投票
1 回答
3454 浏览

ember-cli - 如何扩展 ember-cli 插件?

在我的 ember-cli 应用程序中,我安装了一个名为'ember-cli-selectize'. 查看目录结构,我可以看到它的文件位于/node_modules/ember-cli-selectize'. 现在我想创建一个扩展这个插件的自定义组件。我如何导入/需要它?我已经尝试过这些,但似乎没有一个工作:

var EmberSelectize = require('/ember-cli-selectize/app/components/ember-selectize');

import EmberSelectize from 'components/ember-selectize';

import EmberSelectize from 'node_modules/ember-cli-selectize/addon/components/ember-selectize';

import EmberSelectize from 'ember-cli-selectize/addon/components/ember-selectize';

无论如何,我总是会收到此“找不到模块”错误。我需要以某种方式导入/要求它做类似的事情

0 投票
1 回答
406 浏览

javascript - Ember cli Uncaught TypeError: undefined is not a function

我是一个 ember 菜鸟,我最初在没有 ember-cli 的情况下构建了我的应用程序,它工作得很好,然后我想到了用 ember-cli 重建我非常简单的应用程序的好主意,这可能会出错:)

在 ember 抛出错误并将我指向我的 verse 控制器中的第 52 行之前,这两个应用程序中的一切都相同。请记住,该文件在我的非 ember-cli 版本中完全相同

更新我只是在第 52 行的位置放了很多空格,现在它说错误在第 53 行,它是空的:(((

0 投票
1 回答
383 浏览

ember.js - 在 Ember 应用程序中使用 Ember CLI 插件模型?

我想允许以下内容在我的应用程序中工作:

store.find('my-addon.my-addon-model', 1)

store.find('my-addon/my-addon-model', 1)

store.find('my-addon:my-addon-model', 1)(不太可能)

问题是我希望它搜索在插件中 100% 定义的模型。

import MyAddonModel from 'my-addon/models/my-addon-model'在我的应用程序中工作 - 但容器解析不......

我将如何做/允许这样做?

0 投票
1 回答
44 浏览

ember-cli - 将设计集成到 ember cli 项目中

我只是想向我的 ember cli 应用程序添加一个设计,我将我设计的所有资产文件复制到 /public 文件夹并将它们导入 app/index.html 但大多数文件在加载时出错。

我以为网络上会充满示例,但实际上没有找到任何示例:) 有人可以推荐链接或教程吗?

谢谢,

0 投票
1 回答
1296 浏览

javascript - 使用 Liquid Fire 时,Ember.js 错误“无法读取未定义的属性‘容器’”

我是前端开发的初学者,并尝试将 Ember.js 用于我的项目。我偶然发现了 Edward Faulkner在 EmberConf 2015 上关于 Liquid Fire 的精彩演讲。它看起来非常容易应用,所以我决定试一试。

我的应用通过 ember-cli 0.2.0 使用 Ember 和 Ember-Data Canary。

应用程序的结构有点像这样:

负责此操作的router.js文件的部分是:

用 安装插件后npm install --save-dev liquid-fire,我将user.hbs文件中的 {{outlet}} 替换为 {{liquid-outlet}} 并添加了一个包含一些简单转换数据的transitions.js文件:

但是,一旦我导航到用户页面,我就会收到一个 javascript 错误:

源自第 15 行的liquid-outlet.js文件:

我不知道我做错了什么。似乎我的 {{liquid-outlet}} 被放置在错误的位置或其他东西,但我尝试将它移到其他地方,但没有运气。一旦我导航到其中包含 {{liquid-outlet}} 的模板,我就会得到同样的错误。请帮忙。

谢谢你,奥列格

0 投票
1 回答
539 浏览

ember.js - 在插件注册的 Ember CLI 项目的单元测试中找不到帮助程序

我正在使用由 Ember CLI 插件定义的一些帮助程序,并且一切都在 Ember 应用程序本身中自动运行,但使用 ember-qunit 进行单元测试有点棘手。

根据 ember-qunit 文档,可以在需要中指定依赖项,如下所示:

我得到一个助手找不到错误。我可以理解解析器正在尝试在应用程序本身中找到帮助程序,并且找不到通过插件注册的帮助程序。

ember-truth-helpers 作者建议的解决方法是在运行每个测试用例之前手动导入和注册任何使用的帮助器。与 Ember 应用程序如何正确解决问题相比,这既麻烦又不神奇。

0 投票
1 回答
807 浏览

ember-cli - 插件中的 ember-cli@0.2.0 组件模板

我想知道在插件项目中创建组件时使用的约定是什么......如果我使用 ember-cli@0.2.0 在我的插件项目中生成一个组件,蓝图将在插件/组件中创建一个 js 文件,addon/templates/components中的一个模板,app/components中的一个js文件。我不太清楚的部分是这些组件的模板应该存在于何处。如果我的组件模板需要部分模板,我需要将部分模板放在 app/templates 目录中。如果它位于 addon/templates 目录中,则无法解析。所以问题是这样的:最好将所有模板(组件模板和部分模板)放在 app/templates 目录中,还是将组件模板放在 addon/templates/components 目录中,将部分模板放在 app/templates 目录中?后者感觉有点杂乱无章,而前者似乎更正确只是因为蓝图的行为。任何人有任何见解?

提前致谢。

0 投票
3 回答
573 浏览

ember.js - ember-cli 0.2.1 - 生成的插件测试找不到 mixin

我最近将 ember-cli 0.2.0 升级到 0.2.1 并运行以下命令来生成 mixin:

生成文件放在addon/mixins/listener.js.

生成的测试如下所示:

测试失败并显示以下错误消息:

找不到dummy/mixins/listener从中导入的 模块dummy/tests/unit/mixins/listener-test

我的mixins应该在/addons/而不是/app/

我需要更改哪些测试才能找到模块?

当我从 0.2.0 升级到 0.2.1 时,我按照文档进行升级并运行文档中的所有步骤

但是这一行:

返回了这个错误,我认为这与它有关:

不支持在现有的 ember-cli 项目中生成插件。

0 投票
0 回答
299 浏览

ember-qunit - 无法测试将 div 附加到 dom 的 ember 组件

我有一个 ember-cli-addon,它添加了一个组件,该组件将具有特定类的 div 附加到使用应用程序。我正在尝试测试此集成并且难以设置测试。

我也尝试对组件进行单元测试,但这并不像预期的那样工作。这是我尝试过的:

我已将组件从我的addon目录复制到tests/dummy/components/jquery-backstretch.js以使其可用于虚拟测试应用程序:

jquery-backstretch.js

这会导致组件将 img 附加到body测试页的而不是#ember-testing-container,将 img 更改selector#ember-testingn-container将 img 放在正确的位置,但测试找不到它:

测试/接受/jquery-backstretch.js

应用程序.hbs

测试没有通过,它找不到图像,我还尝试测试组件并将其附加到 DOM,然后测试它是否在 DOM 中,但这并没有产生更好的结果。

请问我该如何测试?