小编fre*_*yer的帖子

正确尝试...使用Async/Await捕获语法

我喜欢Async/Await在Typescript等中提供的新功能的平坦性.但是,我不确定我喜欢这样一个事实,即我必须awaittry...catch块的外部声明变量才能在以后使用它.像这样:

let createdUser
try {
    createdUser = await this.User.create(userInfo)
} catch (error) {
    console.error(error)
}

console.log(createdUser)
// business
// logic
// goes
// here
Run Code Online (Sandbox Code Playgroud)

如果我错了,请纠正我,但似乎最好不要在机构中放置多行业务逻辑try,所以我只留下createdUser在块外声明,在块中分配它的替代方案,以及然后用它.

在这种情况下,最佳做法是什么?

javascript try-catch promise async-await ecmascript-2017

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

在chrome扩展的后台页面中使用jQuery

目标

我正在尝试使用此样板代码在线查找使用字典API来查找所选单词并返回定义.

问题

我已经分别测试了实际的jQuery ajax调用,它运行良好.此外,我可以在页面上获取所选单词.但是,出于某种原因,我在Sample.js中的样板代码中实际调用了ajax函数时遇到了问题

建议是必要的.

background.html

<html>

  <script src="jquery.js"/>
  <script src="sample.js"/>

  <body>
    <p>
    Image here:
    </p>

    <img id="target" src="white.png" width="640" height="480">

  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

的manifest.json

{
  "name": "Context Menus Sample",
  "description": "Shows some of the features of the Context Menus API",
  "version": "0.6",
  "permissions": ["contextMenus"],
  "background": {
    "scripts": ["sample.js"],
    "pages": ["background.html"]
  },
  "manifest_version": 2
}
Run Code Online (Sandbox Code Playgroud)

Sample.js

     // A generic onclick callback function.
      function genericOnClick(info, tab) {
        console.log("item " + info.menuItemId + " was clicked");
        console.log("info: " + JSON.stringify(info)); …
Run Code Online (Sandbox Code Playgroud)

ajax jquery google-chrome

10
推荐指数
1
解决办法
1万
查看次数

使用Javascript获取单击单词的句子

这是我遇到的一个问题,我不太确定如何处理它.

说我有一个段落:

"This is a test paragraph. I love cats. Please apply here"
Run Code Online (Sandbox Code Playgroud)

我希望用户能够单击句子中的任何一个单词,然后返回包含它的整个句子.

javascript jquery

10
推荐指数
2
解决办法
4053
查看次数

将Angular.js应用于Chrome扩展内容脚本中的新DOM元素

好的,所以我已经有一段时间了.

在红色框中,我想要一些角度功能(ng-repeats,数据绑定等...)当双击任何网页上的文本时,会出现此红色框.但是,我似乎无法找到如何实际获得角度有线/连接到红色弹出窗口中的文本框示例.

在chrome中的徽章弹出窗口以及选项页面等中使用angular似乎相当微不足道......但我似乎无法在此实例中使用它.

在双击文本时将div元素添加到任何网页的DOM的示例

inject.js(作为清单中的内容脚本包含在下面)

    var displayPopup = function(event) {

    var mydiv = document.createElement('div'); 
    var $div = $('#divid').closest('.sentence');
    mydiv.innerHTML = getSelectionText();
    mydiv.innerHTML += currentSentence.innerHTML;

        //Next line is where I want to apply some angular functionality
        mydiv.innerHTML += '<div ng-app="myApp" scroll-to-me><input type="text" ng-model="data.test"><div ng-model="data.test">{{data.test}}</div></div>';



    mydiv.id = "popup";
    mydiv.style.position = "fixed";
    mydiv.style.top = event.clientY + "px";
    mydiv.style.left = event.clientX + "px";
    mydiv.style.border = "4px solid #d00";
    mydiv.style.background = "#fcc";

        $("body").append(mydiv);

    $.getJSON('http://local.wordly.com:3000/words/definitions/test', function(data) {
      console.log(data);
    });
  }
Run Code Online (Sandbox Code Playgroud)

我的manifest.json内容脚本数组看起来像:

"content_scripts": …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-extension angularjs

7
推荐指数
1
解决办法
2210
查看次数

Bootstrap 3 Navbar扩展但不会折叠

我正在尝试在Bootstrap 3中实现一个响应式导航栏.大部分内容都在工作.酒吧甚至正确扩展.然后,当我再次按下响应折叠按钮时,条形图会在中途折叠,然后再向下折叠.

这将验证Javascript是否到位以及CSS是否也正确到位.我不知道这怎么可能发生.即使在Plunkr中它也可以,但不是在我的项目中.有任何想法吗?

<div class="navbar">
   <div class="container">
      <button type="button" data-toggle="collapse" data-target=".navbar-responsive-collapse" class="navbar-toggle collapsed">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
      </button>
      <a href="#" class="navbar-brand">Title</a>
      <div style="height: 0px;" class="nav-collapse navbar-responsive-collapse collapse">
         <ul class="nav navbar-nav">
            <li class="active"><a href="#">Home</a></li>
            <li><a href="#">Link</a></li>
         </ul>
      </div>
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

twitter-bootstrap twitter-bootstrap-3

6
推荐指数
2
解决办法
7146
查看次数

使用相同类型的100多个测试的Jasmine单元测试

我最近发现了用于单元测试的Jasmine,它似乎是我正在做的一个很好的解决方案.但是,我正在测试大约100种不同的可能性,我不想一遍又一遍地编写相同的代码行.

所以我制作了一个充满测试的对象,并且我正在使用这些测试一遍又一遍地进行单元测试.它在运行时打印出正确数量的测试.它们都通过如下所示.

但后来我将"cero"更改为"cerFOOBARBAZ",它仍然通过,这是错误的.然后我将0更改为任意数字(例如993)并且它不会通过(它不应该,但是所有测试都会失败.

那是怎么回事?

   var tests = {
        0 : "cero",
        1 : "uno",
        2 : "dos", 
        3 : "tres", 
        4 : "cuatro",
        5 : "cinco",
        6 : "seis", 
        7 : "siete",
        8 : "ocho",
        9 : "nueve",
        10 : "diez",
        11 : "once",
        12 : "doce",
        13 : "trece"

        };

describe("Numbers Return Correctly", function() {

    for(var test in tests) {
        it("Returns Correct String Based On Integer Input", function() {
            var number = parseInt(test);
            expect(number.convertNumToWord("es")).toEqual(tests[test]);
        });
    }
}); …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing jasmine

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

使用Postgres的递归/层次查询

桌子: Flight (flight_num, src_city, dest_city, dep_time, arr_time, airfare, mileage)

我需要找到从任何给定的源城市到任何给定的目标城市无限制停留的最便宜的票价。问题是这可能涉及多个航班,因此例如,如果我从蒙特利尔->堪萨斯城出发,我可以从蒙特利尔->华盛顿出发,然后从华盛顿->堪萨斯城等等。我将如何使用Postgres查询生成此信息?

样本数据:

create table flight(
  flight_num BIGSERIAL PRIMARY KEY,
  source_city varchar,
  dest_city varchar,
  dep_time int,
  arr_time int,
  airfare int,
  mileage int
);


insert into flight VALUES
  (101,    'Montreal', 'NY',         0530,     0645,    180,      170),
  (102,    'Montreal', 'Washington',     0100,     0235,    100,      180),
  (103,    'NY',   'Chicago',        0800,     1000,    150,      300),
  (105,    'Washington', 'KansasCity',    0600,     0845,    200,      600),
  (106,    'Washington', 'NY',         1200,     1330,     50,       80),
  (107,    'Chicago',  'SLC',        1100,     1430,    220, …
Run Code Online (Sandbox Code Playgroud)

sql postgresql

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

使用 Javascript 检查测验答案的最安全方法

在努力完成一个使用 AJAX + PHP 设计匹配测验游戏的项目后,我了解到我公司用于分发其产品的学习套件不允许我在后端运行服务器端脚本来安全地检查答案。这都是由于不幸的等级专制造成的。

长话短说,我必须以某种方式检查客户端的答案(或找出一些棘手的东西)。幸运的是,我已经能够将 jQuery 上传到本地文件夹结构,以便我可以使用它。

在客户端检查客户答案的最安全方法是什么?或者是否有某种方法可以引用外部文件...例如 XML 文件或其他文件,以更安全地检查答案?

javascript security validation ajax

2
推荐指数
1
解决办法
2408
查看次数

创建一个通用方法来运行特定方法作为参数

我正在尝试更改图像的亮度,对比度和其他值.我发现我正在使用经典的双循环来进行很多这些操作,只是在双循环中运行一些简单的数学运算,如下所示:

public void changeBrightness(int brightness)
{
        for(int i=0; i<height; i++)
        {
            for(int j=0; j<width; j++)
            {
                pixels[j][i] = MathUtils.ensureRange(pixels[j][i] + brightness,0,254);
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

但是,我现在需要创建一个几乎完全相同形式的changeContrast方法,并且我想使用一些不同的数学运算来设置这些操作,其中像素被设置.所以,我想用double for循环创建一个泛型方法,它将执行一个作为参数传递的方法.我将如何在Java 7中解决这个问题?以下是我在想的一个例子:

public void runPixelOperation(***pixel operation method goes here***)
    {
        for(int i=0; i<height; i++)
        {
            for(int j=0; j<width; j++)
            {
                pixels[j][i] = ***run pixel operation here***
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

java java-7

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