当我使用此命令“npm install -g ember-cli”安装 ember-cli 时,在终端中显示此错误。
npm 错误!错误:EACCES,mkdir '/usr/lib/node_modules/ember-cli'
npm 错误!{ [错误:EACCES,mkdir '/usr/lib/node_modules/ember-cli']
npm 错误!错误号:3,
npm 错误!代码:'EACCES',
npm 错误!路径: '/usr/lib/node_modules/ember-cli',
npm 错误!fstream_type: '目录',
npm 错误!fstream_path: '/usr/lib/node_modules/ember-cli',
npm 错误!fstream_class: 'DirWriter',
npm 错误!fstream_stack:
npm 错误!['/usr/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm 错误!'/usr/lib/node_modules/npm/node_modules/mkdirp/index.js:46:53',
npm 错误!'Object.oncomplete (fs.js:108:15)'] }
npm 错误!
npm 错误!请尝试以 root/管理员身份再次运行此命令。
npm 错误!系统 Linux 3.13.0-48-generic
npm 错误!命令“/usr/bin/node”“/usr/bin/npm”“安装”“-g”“ember-cli”
npm 错误!cwd /home/narayand4
npm 错误!节点-v v0.10.37
npm 错误!npm -v 1.4.28
npm 错误!路径 /usr/lib/node_modules/ember-cli
npm 错误!fstream_path /usr/lib/node_modules/ember-cli
npm 错误!fstream_type 目录
npm 错误!fstream_class DirWriter
npm 错误!代码 EACCES
npm 错误!错误号3
npm 错误!堆栈错误:EACCES,mkdir '/usr/lib/node_modules/ember-cli' … 我让 ESA 与 Ember 2.0.1 配合良好,但在测试时偶然发现了一个有趣的案例:
给出以下测试:
import Ember from 'ember';
import { module, test } from 'qunit';
import startApp from 'notifier/tests/helpers/start-app';
import Pretender from 'pretender';
import { authenticateSession } from '../../helpers/ember-simple-auth';
let server;
let application;
module('Acceptance | signout', {
beforeEach: function() {
application = startApp();
},
afterEach: function() {
Ember.run(application, 'destroy');
server.shutdown();
}
});
test('successfully sign out and get redirected', function(assert) {
server = new Pretender(function() {
this.post('/oauth/revoke', function() {
return [200, {"Content-Type": "application/json"}];
});
});
authenticateSession(application);
visit('/admin');
click('#sign-out'); …Run Code Online (Sandbox Code Playgroud) 在 Ember JS 项目中,我们有 package.json (用于 NPM 管理)和 Bower.json (Bower 管理),其中我们拥有所有依赖项/devDependency (例如 bootstrap、jquery、ember 等)
现在,它们从各自的注册表中下载,并在本地下载到 node_modules/bower_components 文件夹中。
现在我的问题是,虽然这些文件夹(node_modules/bower_components)包含很多代码依赖项,但当我们进行构建时,我在“dist”文件夹中看到一些代码。我想了解这个区域到底是什么?我看到诸如vendor.css、vendor.js、myappName.css、myappName.js 等内容
那么它们是如何构建的以及它们内部实际包含哪些代码?它是否也基于我们的 package/bower json 配置文件中的内容?或者它是基于我们在 ember-cli-build.js 中的内容?
我正在使用 archlinx 并安装了 ember-cli。在ember serve我recieving以下信息:
A non-recoverable condition has triggered. Watchman needs your help!
The triggering condition was at timestamp=1452004013: inotify-add-watch(/home/cristian/projects/transport-company/node_modules/ember-cli/node_modules/testem/node_modules/socket.io-pure/node_modules/socket.io-client-pure/node_modules/engine.io-client-pure/node_modules/parseuri/node_modules/better-assert/node_modules/callsite) -> The user limit on the total number of inotify watches was reached; increase the fs.inotify.max_user_watches sysctl
All requests will continue to fail with this message until you resolve
the underlying problem. You will find more information on fixing this at
https://facebook.github.io/watchman/docs/troubleshooting.html#poison-inotify-add-watch
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
这是我发布的另一篇文章的延续:单击此处
我已经下载了INSPINIA管理主题,它基于 twitter bootstrap。它包含为大多数 Web-ui 框架(Ember 除外)预先创建的项目。迄今为止采取的步骤:
应用\样式\app.scss
@import "ember-bootstrap/bootstrap";
@import "style";
Run Code Online (Sandbox Code Playgroud)
Ember-Cli-Build.js
'use strict';
const EmberApp = require('ember-cli/lib/broccoli/ember-app');
module.exports = function(defaults) {
let app = new EmberApp(defaults, {
'ember-bootstrap': {
'bootstrapVersion': 4,
'importBootstrapFont': false,
'importBootstrapCSS': false
}
});
return app.toTree();
};
Run Code Online (Sandbox Code Playgroud) 我写了一些 ember 验收测试用例。问题是当我http://localhost:4200/tests通过 Acceptance访问 URL和过滤器模块时,测试用例运行速度快如闪电。即使这些是在async await函数中编写的。
我想使用 ember 运行循环run.later或run.next. 但这不是解决方案。
有没有办法slow mode在应用程序顶部的某个地方添加(或)是否有任何已经存在的测试助手?所以我可以看到运行中的测试用例。
我的团队继承了一个旧的(2017 年左右)基于 ember.js 的项目,我们需要选择是使用 vue 重新制作该项目,还是只是升级 ember 版本。
该项目使用node 6.16,依赖项如下:
// package.json
{
"version": "1.0.0",
"private": true,
"engines": {
"node": ">= 0.10.0"
},
"author": "",
"license": "MIT",
"devDependencies": {
"broccoli-asset-rev": "^2.2.0",
"chart.js": "2.2.1",
"ember-ajax": "0.7.1",
"ember-browserify": "1.1.13",
"ember-cli": "2.4.2",
"ember-cli-app-version": "^1.0.0",
"ember-cli-autoprefixer": "0.6.0",
"ember-cli-babel": "^5.1.5",
"ember-cli-chart": "3.1.0",
"ember-cli-chartjs": "2.3.1",
"ember-cli-dependency-checker": "^1.2.0",
"ember-cli-htmlbars": "^1.3.5",
"ember-cli-htmlbars-inline-precompile": "^0.3.1",
"ember-cli-inject-live-reload": "^1.10.2",
"ember-cli-moment-shim": "2.2.0",
"ember-cli-qunit": "^1.2.1",
"ember-cli-release": "0.2.8",
"ember-cli-sass": "5.3.0",
"ember-cli-spinjs": "1.0.8",
"ember-cli-sri": "^2.1.0",
"ember-cli-uglify": "^1.2.0",
"ember-cookies": "0.0.9",
"ember-data": "^2.18.5",
"ember-disable-proxy-controllers": "^1.0.2",
"ember-export-application-global": "^1.0.4",
"ember-load-initializers": …Run Code Online (Sandbox Code Playgroud) 我正在尝试验证会话对象在我的ember应用程序中是否可用.我使用ember-cli生成应用程序,我遵循了ember-auth安装说明.说明说"将Ember CLI Addon添加到您的项目中,Ember Simple Auth将自行设置".
npm install --save-dev ember-cli-simple-auth
不幸的是,当我在我的控制器中时,没有会话对象.
我也试过在我的app.js中加载initalizer,但我还没弄明白如何从我的控制器访问App.session.我认为ember-cli的命名空间不同.
//app.js
import Ember from 'ember';
import Resolver from 'ember/resolver';
import loadInitializers from 'ember/load-initializers';
Ember.MODEL_FACTORY_INJECTIONS = true;
var App = Ember.Application.extend({
modulePrefix: 'ember-test', // TODO: loaded via config
Resolver: Resolver
});
loadInitializers(App, 'ember-test');
loadInitializers(App, 'simple-auth');
export default App;
Run Code Online (Sandbox Code Playgroud)
//about.js
import Ember from 'ember';
export default Ember.Controller.extend({
derp: 'derpvalue',
actions: {
test : function(){
console.log("In test");
console.log(session);
console.log(App.session);
debugger;
}
}
});
Run Code Online (Sandbox Code Playgroud) 新的余烬规则规定我们需要使用以下模式
propObserver: Ember.observer(function () {
//code
})
Run Code Online (Sandbox Code Playgroud)
代替
propObserver: function() {
//code
}.observers('someProp')
Run Code Online (Sandbox Code Playgroud)
在更新ember之前,我们可以执行以下操作
propObserver: function () {
//code
}.observes('someProp').on('init')
Run Code Online (Sandbox Code Playgroud)
如何实现这种级联?
现在我知道我们可以单独做到这一点
propObserver: Ember.observer('someProp', function () {
//code
})
propObserver: Ember.on('init', function () {
//code
})
Run Code Online (Sandbox Code Playgroud) 我目前正在学习Ember.js并对数据库感到困惑.我想创建一个评论网站,用户可以在提交后撰写评论并查看评论.
我已经学习了如何显示官方教程中的内容的基本知识,但教程中的数据是硬编码的.如果我需要插入一条记录,我该如何实现呢?用数据库或更简单的东西?
谢谢
ember-cli ×10
ember.js ×9
javascript ×3
ember-data ×2
archlinux ×1
bootstrap-4 ×1
ember-qunit ×1
observers ×1
phantomjs ×1