小编bos*_*570的帖子

JQuery - 从Selectbox中删除除first和selected之外的所有选项

我有一个带有几个选项的html选择框.选择一个选项后我想要只选择选项,并在选择选项下拉列表中显示第一个选项.我知道如何过滤并只显示一个选项,但我无法弄清楚如何在"选定"选项保持"选中"的情况下包含这两个选项.我包含了与我的代码类似的代码段以及演示.

HTML:

<select id="myDropdown">
<option selected>Select fruit</option>
<option>Grapes</option>
<option>Bananas</option>
<option>Oranges</option>
<option>Apples</option>
</select>
Run Code Online (Sandbox Code Playgroud)

JS:

$(document).on('change', '#myDropdown', function() {
    $('option', this).not(this,'option:gt(0)').siblings().remove(); });
Run Code Online (Sandbox Code Playgroud)

我试图使用第一个选项来执行另一个'on change'功能,所以我需要选择的选项保持选中状态,其余的被过滤除了第一个.例如,如果选择了"橘子",您会看到:

<select id="myDropdown">
     <option>Select fruit</option>
     <option>Oranges</option>  //selcted value
</select>
Run Code Online (Sandbox Code Playgroud)

BTW我也使用jquery mobile来设计风格.

的jsfiddle

html javascript jquery

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

如何防止浏览器缓存 webpack 包?

我正在使用 webpack 将一个 React 应用程序捆绑在一个 js 文件中,我想将其添加到客户端站点。所以我最终得到了一个app.js,我可以提供一个 url 来表示文件托管给客户端的位置https://example.mysite.com/apps/app.js,并且可以通过客户端站点上的脚本标签包含该 URL。够简单的。

我在这里可能遇到的问题是浏览器端缓存。我不能在这里使用版本标签,因为要求客户不断更新其网站上的代码是不现实的期望。

Webpack 哈希也不是一个选项,因为这意味着更新客户端的文件,这也是我想要解决的问题。

有没有办法防止我的app.js文件被缓存并在每次app.js文件更改时获取文件的新版本?

caching reactjs webpack

6
推荐指数
0
解决办法
4892
查看次数

JS 文件缓存在通过脚本标记与 GET 包含时有所不同

过去几天我一直被困在缓存地狱中,虽然我开始得到它仍然有点挣扎。

期望的结果
我想在站点上包含一个 JS 文件并缓存它和/或仅在服务器上更改文件时获取文件的新副本。我不能在文件名中使用版本标签或哈希。文件名需要保持一致。

我在哪里
从我使用 Etags 阅读本文后所了解的内容来看,这是解决此问题的完美解决方案。它们将在文件更改时更新,如果标签不匹配,将发送文件的新版本。当我通过浏览器请求文件时,这似乎有效

所以你可以看到,在第一个请求中,我得到 200,下载大小为 292 B,在第二个请求中,因为标签匹配,我得到 304,下载大小为 137 B(我假设只是标题大小)。伟大的!这正是我想要的。

在此处输入图片说明

我的请求标头查找 etag: 在此处输入图片说明

我的问题
现在当我从浏览器请求文件时这有效,但在脚本标记中添加 js 文件不会以相同的方式发送请求标头。所以,打开下面的html文件

<!DOCTYPE html>
<html>
    <body>
        <script src="https://myTestSite.com/testCache.js"> 
        </script>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的 js 文件每次都被提取,因为if-none-match请求头不存在。使用 html 脚本标记时,如何复制在上述场景中观察到的行为? 在此处输入图片说明 在此处输入图片说明

TL;DR
在使用 html 脚本标签而不是简单的浏览器 GET 请求时,如何使用 Etags 仅请求修改的 JS 文件?

javascript etag caching http

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

如何使用 terraform 运行 ECS 任务?

我最近开始涉足 DevOps 方面,目前正在使用 Terraform 和 AWS ECS 设置一个简单的 Web 服务器来托管我的 Web 应用程序。

使用我当前的 Terraform 配置,我可以看到我的集群是使用具有我的任务定义的服务创建的。我不知道如何运行从 Terraform 启动网络服务器所需的任务。我只能看到创建任务定义和服务的能力,但不能运行它们。我对这两种技术都很陌生,所以我担心我可能会遗漏一些简单的东西。

我使用的设置来自我在网上找到的一个我试图遵循的示例

TL;DR:我可以使用 Terraform 创建服务,但似乎无法弄清楚如何运行它们。

amazon-web-services amazon-ecs terraform

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

反应钩子状态变量在重新渲染后不更新

在下面的示例中,我有一个要更新的元素(水果)数组,并使用更新后的数组执行其他操作(在这种情况下,保存更新后的列表)。我的理解是关于重新渲染状态将更新的信息,但是这里没有。或者状态更新和我的操作之间存在延迟。

在该addFruit函数中,我可以看到立即添加了“ Peach”,但该saveFruits函数的控制台仍显示状态fruit保持不变。我该如何更新才能立即使用。(我知道在这种情况下,我可以将newFruits变量传递saveFruits给update,但是我也需要fruits针对其他地方进行更新)。

请原谅我,因为这是我关于响应异步状态的百万分之一的问题,但是有些事情还没有为我解决。

const { useState } = React;

function ParentComp() {
    const[fruits, setFruits] = useState(['Apple', 'Orange', 'Banana', 'Pomegranate', 'Kiwi'])


   const addFruit = () => {
      let newFruits = Object.assign([], fruits)
      newFruits.push('Peach')
      setFruits(newFruits)
      saveFruits()
   }
   
   const saveFruits = () => {
      console.log('API req to save fruits.', fruits)
   }

   return (
    <div>
    { fruits.map( (fruit, key) => <div key={key}>{fruit}</div> ) }
      <button type="button" onClick={addFruit}>Add Peach</button>
    </div>
   )
} …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks

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