Пробел WebResource.axd или не найденный

Вы почти на месте, вы можете добавить индекс i на карту и посмотреть, находимся ли мы в нечетной или четной строке. Если нечетное, то i % 2 будет оставлено 1, и вы можете выбрать, какой класс добавить, основываясь на этом логическом значении.

 renderRecipes() {
    return this.state.recipes.map((recipe,i) => (
     <div class="row">
     //col should be changed here, once col-4 and in the next col-3, and to keep the pattern going
      <div class="{i % 2 === 1 ? 'col-3':'col-4'}"> 
        <img src={recipe.img}/>
        <h3>{recipe.name}</h3>
       </div>
     </div>
    ));
  } 

Правка Bootstrap перенесет col с, превышающих строку, на следующую строку. Вы можете использовать это для печати всех col по горизонтали, и они будут перенесены на правильные строки. Вам просто нужно найти математику, которая определит, находитесь ли вы в ряду с 3 или 4 промежутками.

 renderRecipes() {
    let isThree = function(i){
      //Here add algorithm to determine if you are in a 3 row or a 4 row.
    }

    return (
     <div class="row">
       this.state.recipes.map((recipe,i) => (

         <div class="{isThree(i) ? 'col-3':'col-4'}"> 
           <img src={recipe.img}/>
           <h3>{recipe.name}</h3>
         </div>

       ));
     </div>
    )


  } 
10
задан starblue 14 April 2009 в 18:02
поделиться

3 ответа

Я заметил, что мои CSS-файлы WebResource загружались правильно, но Javascript не загружался в WebResource в новом решении.

Итак, вместо использования System.Web.UI. ClientScriptManager , использованного для регистрации WebResources, я переключился на использование System.Web.UI. ScriptManager . Теперь файлы выходят из ScriptManager.axd (вместо WebResource.axd ). Похоже, это решило проблему.

Старый код до исправления:

public class ScriptManagerExtension : System.Web.UI.ScriptManager
{
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        Page.ClientScript.RegisterClientScriptResource(this, typeof(ScriptManagerExtension), "Mri.Controls.Resources.Scripts.Libraries.jQuery.js");
    }
}

Приведенный выше фрагмент кода использует System.Web.UI.ClientScriptManager

Новый код после исправления:

public class ScriptManagerExtension : System.Web.UI.ScriptManager
{
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        RegisterClientScriptResource(this, typeof(ScriptManagerExtension), "Mri.Controls.Resources.Scripts.Libraries.jQuery.js");
    }
}

Приведенный выше фрагмент кода использует System.Web. UI.ScriptManager

Насколько я понимаю, ClientScriptManager был представлен в 2.0. Я считаю, что ScriptManager - это новая улучшенная версия 3.

2
ответ дан 4 December 2019 в 02:52
поделиться

Установлены ли ресурсы как часть DLL?

Откройте решение Mri.Controls и просмотрите свойства ваших файлов ресурсов JavaScript.
Я думаю, что здесь может быть проблема.

2
ответ дан 4 December 2019 в 02:52
поделиться

Возможно, вам не хватает [Assembly: WebResource ("YourNameSpace.YourFile.js", "text / javascript") ] атрибут. WebResource.axd нуждается в этом атрибуте. Вы можете проверить эту статью KB для дополнительной информации по этому вопросу.

3
ответ дан 4 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: