小编D D*_*ham的帖子

如何格式化基于 ajax 的 Select2 预填充?

我们已经找到了几个为 Select2 预填充选定选项的示例,但是我们无法找到处理格式化列表和选择选项的示例。我们在https://jsfiddle.net/gpsx62de/26/上有一个 JS 小提琴说明了这个问题。在那个小提琴中,您可以在选择搜索中键入和 L 或其他任何内容,然后返回数据,格式化列表,如果您选择某些内容,则选择格式化。

但是,如果您单击该 JS Fiddle 中的按钮,该按钮旨在根据https://select2.org/programmatic-control/add-select-clear-items#preselecting-options-in-an-remotely-sourced模拟预填充-ajax-select2返回数据(您可以取消对 console.log 的注释以查看它),但格式化的选择显示未定义的预期值。有谁知道如何正确显示预填充数据的格式化值?

// Set up the Select2 control
$('#mySelect2').select2({
    ajax: {
        url: '/api/students'
    }
});

// Fetch the preselected item, and add to the control
var studentSelect = $('#mySelect2');
$.ajax({
    type: 'GET',
    url: '/api/students/s/' + studentId
}).then(function (data) {
    // create the option and append to Select2
    var option = new Option(data.full_name, data.id, true, true); //**** DOES IT MATTER WHAT IS PASSED HERE …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery jquery-select2

5
推荐指数
2
解决办法
258
查看次数

Angular ng-show(或ng-if)不更新值更改

我在plunker有一个简单的例子.我在一个元素上有一个ng-show而在另一个元素上有一个select.select应切换显示/隐藏其他(输入)元素.最初将select设置为Yes会按预期显示另一个输入元素.然后将select设置为No会将scope范围值按预期切换为false,但不会隐藏input元素.

我已经搜索了与此相关的其他帖子,我发现的那些帖子在ng-show上有或没有{{}}(我没有应该这样)或者没有在$ scope上的值(我做).我认为可能是$ scope.apply()问题,但是为什么第一个改为Yes工作?同时添加apply仍然不会使No(false)工作.我错过了什么?

TIA!

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.conf = {};
});
Run Code Online (Sandbox Code Playgroud)

ng-show

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

在React组件中的ES2015非变异阵列交换(或磁通动作)

也许我一直在搜索错误的关键字,但我一直试图找到一个JavaScript(最好是ES2015 +)函数的例子来以非变异(不可变)的方式交换两个数组值.我也想使用纯JS来做这个,而不必添加不变量库.

例如,如果我有[1, 2, 3, 4, 5, 6],我想将3和4(或可能是它们的索引)传递给返回新数组的函数[1, 2, 4, 3, 5, 6].我发现了一些方法,但他们通过直接替换值来改变数组.我需要一种不可改变的方式.我猜也许用切片?我这样做是一个React组件,如果这很重要,并且数组是一个状态值.

TIA!

javascript immutability reactjs

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

Vuelidate“OR”验证器示例

好的 - 搜索了很长一段时间,但找不到示例或使用 Vuelidate 的 OR 验证器。这个 github 问题中提到的那个是无效的,该问题在没有提供有效 OR 示例的情况下解决。该文档提到它的存在,但没有任何的例子,我们可以找到。任何人都有或知道一个有效的例子?

vuelidate

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

使用反应路由器在路由上设置状态/道具

我对React有些新意.所以请耐心等待我.我有以下基础结构:

<App>
 this.props.children
</App>
Run Code Online (Sandbox Code Playgroud)

...在儿童中,一个组件是一个标题,它具有我想要的可选搜索组件:

<Header>
  ...some other children...
  <Search /> <- STUCK HERE SHOULD BE OPTIONAL!!!
</Header>
 ...children from other components...
Run Code Online (Sandbox Code Playgroud)

我想要做的是说当我去路线A时,不应该包括搜索组件(或者至少不显示),但是当我去路线B时,它应该.我已经洗了几天,到目前为止还找不到满足这种需求的解决方案.如果重要,我使用ES6/7(babel通过webpack).

我可以在APP中设置状态并按字面意思调整以调整搜索上显示的传递道具,或者显示或不显示它,但无法根据路线动态地弄清楚如何做到这一点.

核心问题是如何告诉App(和间接Header)在某些路由上的Header内部显示搜索组件,而不是在其他路由上.我想'也许我需要中间的某种抽象/包装组件,但我不太确定.欢迎任何或想法.

TIA!

reactjs react-router

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

使用React在Material UI对话框中表单

我试图让一个表单在Material UI Dialog组件内部工作.如果我将Dialog包装在表单标签中,它们甚至不会显示在生成的html中(不知道为什么)...

<form onSubmit={someFunction}>
  <Dialog>
    ...
  </Dialog>
</form>
Run Code Online (Sandbox Code Playgroud)

如果我将其反转并将表单标记放在对话框中,表单元素将显示在生成的html中,但是设置为type ="submit"的操作按钮将不会触发表单的onSubmit.

<Dialog>
  <form onSubmit={someFunction}>
    ...
  </form>
</Dialog>
Run Code Online (Sandbox Code Playgroud)

有没有人有任何成功使这个组合工作?我知道我可以直接从动作按钮单击调用该函数,但我也在使用Redux Form并在应用程序中有其他非对话框形式,所以我将它绑定到表单元素.所以我真的需要以某种方式从Dialog调用表单提交.

reactjs material-ui

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