小编Pre*_*exo的帖子

如何使用第三方npm包与ember cli app

编辑: 这实际上是关于任何npm包,它不是与ember一起玩的.在我的情况下,我试图使crypto-js工作,但似乎总是同样的问题,任何不专门为ember cli设计的npm包.

我想在我的ember应用程序中使用cryptoJS,我目前正在使用ember cli进行重构,但是我在导入我已经使用的所有第三方软件包和库时遇到了很多麻烦,例如cryptoJS.

CryptoJS至少有一个npm的包,我甚至不想考虑如果我的一些包含的库没有包会发生什么...

我是否只是忽略了ember-cli文档中的要点,或者它是否真的没有描述如何导入其他npm包以及如何正确地包含非包文件库以使它们保持在版本控制和依赖控制之下?

如果我按照crypto-js包手册的描述:

var CryptoJS = require("crypto-js");
console.log(CryptoJS.HmacSHA1("Message", "Key"));
Run Code Online (Sandbox Code Playgroud)

我得到了错误 ember build

utils/customauthorizer.js: line 1, col 16, 'require' is not defined.
Run Code Online (Sandbox Code Playgroud)

感谢您对此的任何帮助,我对ember cli项目感到非常兴奋,但导入我现有的ember应用程序到目前为止一直非常痛苦...

编辑:

只是导入不幸不起作用.

import CryptoJS from 'crypto-js';
Run Code Online (Sandbox Code Playgroud)

在构建期间抛出

daily@dev1:~/VMD$ ember build
version: 0.1.2
Build failed.
File: vmd/utils/customauthorizer.js
ENOENT, no such file or directory '/home/daily/VMD/tmp/tree_merger-tmp_dest_dir-F7mfDQyP.tmp/crypto-js.js'
Error: ENOENT, no such file or directory '/home/daily/VMD/tmp/tree_merger-tmp_dest_dir-F7mfDQyP.tmp/crypto-js.js'
    at Error (native)
    at Object.fs.statSync (fs.js:721:18)
    at addModule (/home/daily/VMD/node_modules/ember-cli/node_modules/broccoli-es6-concatenator/index.js:84:46)
    at addModule (/home/daily/VMD/node_modules/ember-cli/node_modules/broccoli-es6-concatenator/index.js:133:9)
    at addModule (/home/daily/VMD/node_modules/ember-cli/node_modules/broccoli-es6-concatenator/index.js:133:9)
    at /home/daily/VMD/node_modules/ember-cli/node_modules/broccoli-es6-concatenator/index.js:59:7
    at $$$internal$$tryCatch (/home/daily/VMD/node_modules/ember-cli/node_modules/rsvp/dist/rsvp.js:470:16)
    at …
Run Code Online (Sandbox Code Playgroud)

npm ember.js ember-cli

28
推荐指数
2
解决办法
2万
查看次数

/ usr/bin/time - 格式化输出经过的时间(以毫秒为单位)

我使用/ usr/bin/time程序来测量命令的时间.使用--format参数,我可以格式化输出.例如

/usr/bin/time -f "%e" ls
Run Code Online (Sandbox Code Playgroud)

有没有办法输出更长的精确秒数?或者只输出毫秒,而不是秒?

在/ usr/bin/time的手册中,它只说了几秒钟,但也许有一种方法,有人可以帮助我...谢谢!

编辑:我知道bash命令"time",它使用环境变量"TIMEFORMAT"的格式.对不起,但我不想改变那个env-var ......对我来说似乎有风险,解决方案应该是不会改变运行系统的东西:)

bash time debian time-format

23
推荐指数
2
解决办法
2万
查看次数

为什么在删除或更新时不使用外键而没有操作

我有一个感兴趣的问题:

我有2代表InnoDb.
table tbl_a有一个主键,命名为a_id;
table上tbl_b有一个主b_id键和一个外键,tbl_a.a_id带有" ON DELETE NO ACTION".

+-------------+---------------+---------------+
|  Table Name |  Primary Key  |  Foreign Key  |
+-------------+---------------+---------------+
|    tbl_a    |     a_id      |               |
|    tbl_b    |     b_id      |     a_id      |
+-------------+---------------+---------------+
Run Code Online (Sandbox Code Playgroud)

为什么我仍然会使用InnoDb和外键,如果我最终没有真正使用外键的魔力呢?
还有一点是使用
和外键
而不是
而没有外键.
如果我只是NO ACTION删除或更新?

我希望你有我的兴趣:)

mysql myisam innodb foreign-keys

21
推荐指数
2
解决办法
4万
查看次数

AngularJS $资源自定义标头

在经历了几次理解问题之后,我遇到了非常困难的问题.我无法让我的自定义标头处理来自AngularJS的$ request.我的定义如下:

$scope.re = $resource('/', {
    callback: 'JSON_CALLBACK'
    }, {
    'updateCart': {
        method: 'POST',
        headers: {
            'module': 'Shop',
            'mod_id': '1',
            'event': 'updateCart'
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

还在这里JSFIDDLE

这个问题仍然有效吗?还有另一种设置自定义标头的方法吗?谢谢你的帮助!:)

ajax-request angularjs

6
推荐指数
1
解决办法
5095
查看次数

如何在ember cli中使用自定义授权器和自定义身份验证器来实现ember simple-auth

我不明白我应该如何将自定义身份验证器和自定义授权者包含在ember cli中.

在哪里放置它以及包含什么以及如何操作.简而言之,简单身份验证的cli示例不包括自定义授权程序和身份验证程序.

构建成功,但在浏览器中运行时,我收到错误

TypeError: SimpleAuth.Authenticators is undefined
Run Code Online (Sandbox Code Playgroud)

我知道我做错了什么,但是请你指导我或指出正确的文档如何做到这一点,我找不到任何东西:(我的初始化程序看起来像这样:

import Ember from 'ember';
import CustomAuthenticator from "../models/customauthenticator";

export default {
  name : 'authentication',
  before : 'simple-auth',
  initialize : function(container) {
    container.register('authenticator:custom', CustomAuthenticator);
    //container.register('authorizer:custom', CustomAuthorizer);
  }
};
Run Code Online (Sandbox Code Playgroud)

我的身份验证器看起来像这样

import Ember from "ember";
import App from '../app';
import SimpleAuth from "simple-auth/authenticators/base";

App.CustomAuthenticator = SimpleAuth.Authenticators.Base.extend({
  tokenEndpoint: '/api/RestUser.php/users/core/access/',

  restore: function(data) {
    [...]
  },
  authenticate: function(credentials) {
    [...]
  },
  invalidate: function() {
    [...]
  }
});
Run Code Online (Sandbox Code Playgroud)

我错过了什么?提前致谢!

ember.js ember-cli ember-simple-auth

5
推荐指数
1
解决办法
1104
查看次数

从现有的 HTML5 画布中获取 FabricJS 画布对象

我有一个带有红色矩形的 HTML5 画布:

<canvas id="c" width="209" height="209" style="border: 1px solid rgb(0, 0, 0); position: absolute; width: 209px; height: 209px; left: 0px; top: 0px; -webkit-user-select: none;" class="lower-canvas"></canvas>
Run Code Online (Sandbox Code Playgroud)

现在我想使用fabricjs 库在它上面画更多的线并在这个现有的画布上工作。

但是如果我这样做了var canvas = new fabric.Canvas('c');,画布就会变空白,上面的所有对象都会消失。

所以我正在寻找一种方法来从这个现有的画布中检索一个 fabricjs 对象。

提前感谢您的任何帮助!

javascript html5-canvas fabricjs

5
推荐指数
0
解决办法
2128
查看次数

理解AngularJS中的双向数据绑定

我是AngularJS的新手.很长一段时间我试图滥用它,就像我一直使用Javascript或Mootools这样的Javascript-Frameworks.现在我明白它不再那样了......但是我遇到了一些大问题因为我总是用CMS生成我的HTML输出.

所以当它第一次出现时它是非常静态的......小例子:

<ul>
 <li>foo <span>delete</span></li>
 <li>bar <span>delete</span></li>
 <li>blub <span>delete</span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

现在我想,双向数据绑定意味着我可以在角度范围和控制器的帮助下生成视图,但也可以通过视图生成模型.

我可能在那里感到困惑......所以这是我的问题.有没有办法从CMS的静态HTML输出启动模型?

我试过这样的事......

<ul ng-controller="Ctrl">
 <li ng-init="item[0].name=foo">{{item[0].name}} <span ng-click="remove(0)">delete</span></li>
 <li ng-init="item[1].name=bar">{{item[1].name}} <span ng-click="remove(1)">delete</span></li>
 <li ng-init="item[2].name=blub">{{item[2].name}} <span ng-click="remove(2)">delete</span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

在我的控制器中,我写了一个删除功能.但是当它删除时,它只删除了名称...... span按钮仍然存在

虽然当我将我的数据定义为javascript-array并通过Angular使用ng-repeat进行整个输出时它确实有效...像这样:

<ul ng-repeat="it in item">
 <li>{{it.name}} <span ng-click="remove($index)">delete</span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我希望我在这里说明一点,每个人都有我的困难和问题?任何人都可以告诉我,我在那里尝试的是否可能?

data-binding two-way angularjs

4
推荐指数
1
解决办法
5740
查看次数

排序或过滤后丢失的免费jqgrid自定义格式化程序

我正在使用免费的jqgrid 4.13.0

我写了一个自定义格式化程序,但是不幸的是,对表进行排序或过滤后,该列的单元格内容始终丢失。我可能在格式化程序功能中做错了什么,但还没有真正了解缺少的内容。有人可以发现我的错误吗?为什么它与内置的设备工作正常,但对我的却不起作用。我受到了这一启发:http : //www.ok-soft-gmbh.com/jqGrid/CascadingFormater.htm

我可以看到示例的调用方式$.fn.fmatter.call,也许我也需要这样做。这是钥匙吗?不幸的是,如果我自己编写函数,我找不到有关如何执行此操作的任何文档。

这是我的设置:

var formatEnduser = function (cellValue, options, rowObject, action){
    return rowObject.so_enduser_id == undefined ? '' : '<a href="index.php?module=Accounts&view=Detail&record='+rowObject.so_enduser_id+'">'+rowObject.so_enduser_name+'</a>';
}

$("#jqGrid").jqGrid({
    datatype: "jsonstring",
    datastr: jsonData,
    jsonReader: {
        root: 'rows',
        id: 'crmentity_id',
        repeatitems: false,
        page:  function(obj) { return 1; },
        total: function(obj) { return 1; },
        records: function(obj) { return obj.rows.length; },
    },
    autowidth: true,
    height: 600,
    shrinkToFit: true,
    rownumbers: true,
    rowNum: 5,
    pager: false,
    loadonce: true,
    viewrecords: true,
    colModel: [
        {
            name: …
Run Code Online (Sandbox Code Playgroud)

jqgrid jqgrid-formatter free-jqgrid

3
推荐指数
1
解决办法
731
查看次数

bash - 为什么(cd && sleep 5000)启动第二个进程

我有这个脚本test.sh

#!/bin/bash
( cd . && sleep 5000 )
Run Code Online (Sandbox Code Playgroud)

我执行./test.sh & 然后运行ps lax | grep test.sh

我现在有2个进程正在运行...

0  1000  6883  6600  20   0  10600  1332 -      S    pts/2      0:00 /bin/bash ./test.sh
1  1000  6884  6883  20   0  10604   704 -      S    pts/2      0:00 /bin/bash ./test.sh
Run Code Online (Sandbox Code Playgroud)
  • 为什么我有两个进程在运行?第二个进程来自哪里?
  • 如果cd ".."从命令中删除,为什么我没有两个进程?

谢谢你的任何解释,我只是没有得到它,我想我在这里缺乏一些基础......或者这是一些vodoo?;)

bash sleep pid

0
推荐指数
1
解决办法
118
查看次数