我试图运行另一个NodeJS版本,nvm但收到此错误:
$ nvm use v4.2.4
nvm is not compatible with the npm config "prefix" option:
currently set to "/Users/z/.npm-global"
Run `npm config delete prefix` or `nvm use --delete-prefix v4.2.4` to unset it.
Run Code Online (Sandbox Code Playgroud)
我故意设置了我的前缀sudo npm(参见https://docs.npmjs.com/getting-started/fixing-npm-permissions).
有没有办法可以使用nvm而不会丢失全局安装包的前缀?
如果Protractor正在取代Angular Scenario Runner进行E2E测试,这是否意味着我仍然可以将它与Karma一起用作我的E2E测试框架?
尝试去
sudo npm install protractor -g
Run Code Online (Sandbox Code Playgroud)
再次臭名昭着的错误/警告(谷歌搜索无效):
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/dmitrizaitsev/.node-gyp/0.12.0"
Run Code Online (Sandbox Code Playgroud)
似乎发生的是node version 0.12.0在同一安装过程中一次又一次地下载和重建,尽管我的机器上是当前的节点版本:
node -v
v0.12.0
Run Code Online (Sandbox Code Playgroud)
问题:
实际上缺少目录"/Users/dmitrizaitsev/.node-gyp/0.12.0"!为何如此误导消息?
为什么这个目录既node v0.12.0没有在上一次成功重建期间也没有创建node-gyp?
(显然)我怎样才能防止这种情况发生?
如果它有任何重要性,我运行Mac OSX 10.8.5.
我们想要text-align:justify,以获取列的所有宽度,但它应该从右侧开始.有没有办法用css或某种方式来制作它?
编辑:
正如建议的 http://jsfiddle.net/dVbJr/33/
.text {
text-align: justify;
direction:rtl;
}
Run Code Online (Sandbox Code Playgroud)
有效,但它有标点符号问题.
解决了
<span style="float:right">...</span>
Run Code Online (Sandbox Code Playgroud)
这附加到最后解决了标点符号问题.感谢大家的努力!我接受第一个答案.
同样臭名昭着的错误
npm ERR! peerinvalid The package generator-karma does not satisfy its siblings' peerDependencies requirements! npm ERR! peerinvalid Peer generator-angular@0.7.1 wants generator-karma@~0.6.0 npm ERR! peerinvalid Peer generator-angular-ui-router@0.5.3 wants generator-karma@~0.5.0 npm ERR! System Darwin 12.5.0 npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "generator-angular" npm ERR! cwd /Users/dmitrizaitsev/Dropbox/Priv/APP/my-yo-project npm ERR! node -v v0.10.24 npm ERR! npm -v 1.3.21 npm ERR! code EPEERINVALID
来自安装各种包装,例如
npm update -g yo
Run Code Online (Sandbox Code Playgroud)
唯一找到的卸载建议generator-karma没有帮助 - 它重新安装回来.
更好地解释它为什么会发生和工作解决方案?
我想在运行后自动将某些文件从npm包复制到用户的本地目录
npm install my-package
我可以通过声明"files"内部来安装它们package.json.问题是---文件没有放在本地目录中.所以我需要运行postinstall脚本.
但现在我不知道软件包的安装位置(可能在目录树的更高位置),那么如何通过脚本可靠地访问文件并将它们复制到本地目录?
(通过本地目录,我的意思是---从npm install my-package 用户消费包的地方开始.)
UPDATE.似乎postinstall脚本作为npm拥有主进程的进程运行node_modules/my-package,所以我仍然不知道如何访问用户的主目录而不是天真../../.
我正在使用Cordova和AngularJS制作移动应用程序.目前我已经安装了ui-router用于路由,但我对任何其他路由选择开放.
我的愿望:我想缓存某些与参数绑定的视图.换句话说,我想缓存路径(或页面).
示例情况:假设我们看到一些仪表板页面,点击一些重定向到路径的书籍封面book/2.此路径首次加载到应用程序中.路由器重定向HomeController到BooksController(无论名称).现在BooksController加载给定的数据$stateParams(book id = 2)并创建充满所选书籍信息的视图.
在这种情况下我想要的是什么:
实际上,最好根据路径缓存我访问的所有内容.预加载也很酷.
原因:表现.当我打开一些书籍列表时,我希望它能够快速显示.每次创建视图时,页面更改的动画看起来很糟糕(它不是很平滑).
任何帮助,将不胜感激.
首先,由于我认为这是许多移动HTML应用程序编程人员的常见问题,我想精确一些信息:
ng-bind,ng-repeat等等.我有一些半解决方案,但我会对我的愿望严格要求.
将所有视图放入一个文件(我可以使用gulp builder)并使用ng-show.这是最简单的解决方案,我不相信任何知道AngularJS的人都不会想到它.
一个很好的技巧(来自@DmitriZaitsev)是创建一个辅助函数来显示/隐藏基于当前位置路径的元素.
好处:
缺点:
使用来自ui-router-extras的 Sticky States和Future States 非常棒.
好处:
ui-router.book1, …我有以下代码在我的模板文件中创建一个popover:
<span class="icon-globe visibility"
id="visibilityFor{{post.metaData.assetId}}"
popover="{{post.visibilityListStr}}"
popover-placement="right"
popover-trigger="mouseenter"
popover-popup-delay="50"
visibility>
</span>
Run Code Online (Sandbox Code Playgroud)
我在popover上有一些可点击的链接.但问题是我无法悬停在创建的弹出窗口上.我提到链接http://jsfiddle.net/xZxkq/ 并尝试创建一个指令即.为此目的的"可见性".
这是代码:
myAppModule.directive("visibility", function ($timeout,$rootScope) {
return {
controller: function ($scope, $element) {
$scope.attachEvents = function (element) {
$('.popover').on('mouseenter', function () {
$rootScope.insidePopover = true;
});
$('.popover').on('mouseleave', function () {
$rootScope.insidePopover = false;
$(element).popover('hide');
});
}
},
link: function (scope, element, attrs) {
$rootScope.insidePopover = false;
element.bind('mouseenter', function (e) {
$timeout(function () {
if (!$rootScope.insidePopover) {
element.popover('show');
attachEvents(element);
}
}, 200);
});
element.bind('mouseout', function (e) {
$timeout(function …Run Code Online (Sandbox Code Playgroud) angularjs angular-ui angularjs-directive angular-ui-bootstrap
在JavaScript字符串中是否有语法高亮HTML的Sublime包?
(注意问题只是关于JS字符串中的HTML,而不是一般的语法高亮.)
具体来说,我正在使用内联模板编写Angular组件
angular.module('compMod', []).component('myComp', {
template: `<div>Some Text</div>`
});
Run Code Online (Sandbox Code Playgroud)
并希望在ES6模板字符串中突出显示HTML语法.
我有我Gulpfile的编译我的sass,只是" live-reload远离倾销codekit".我正在努力让这种风格的注射工作.我试图设置它:https://github.com/vohof/gulp-livereload
当我在终端中运行gulp时,它似乎编译了sass,但它没有注入样式.我究竟做错了什么?我在chrome +以下节点模块中安装了livereload扩展:
"devDependencies": {
"gulp": "~3.5.0",
"gulp-sass": "~0.6.0"
},
"dependencies": {
"gulp-livereload": "~0.2.0",
"tiny-lr": "0.0.5"
}
Run Code Online (Sandbox Code Playgroud)
我的gulpfile看起来像这样:
var gulp = require('gulp');
//plugins
var sass = require('gulp-sass'),
lr = require('tiny-lr'),
livereload = require('gulp-livereload'),
server = lr();
gulp.task('sass', function () {
gulp.src('./scss/*.scss')
.pipe(sass())
.pipe(gulp.dest('./'))
.pipe(livereload(server));
});
// Rerun tasks when a file changes
gulp.task('watch', function () {
server.listen(35729, function (err) {
if (err) return console.log(err);
gulp.watch('scss/**/*.scss', ['sass']);
});
});
// …Run Code Online (Sandbox Code Playgroud) angularjs ×5
node.js ×4
javascript ×3
npm ×3
html ×2
karma-runner ×2
angular-ui ×1
css ×1
generator ×1
gulp ×1
install ×1
layout ×1
livereload ×1
nvm ×1
package ×1
permissions ×1
post-install ×1
prefix ×1
protractor ×1
root ×1
sass ×1
sublimetext3 ×1
testing ×1
yeoman ×1