Набор ColdFusion CFC Лучшие / Методические рекомендации?

Для вашего комментария:

Я пришел к этому: jsfiddle.net/yw5xad79/1, но, как вы видите, навигация не фиксируется наверху, как этого добиться? / blockquote>

Вам просто нужно добавить немного CSS, чтобы держать его на вершине:

nav {
  position: fixed !important;
  width: 100%;
}
<!-- Font Awesome -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.0/css/all.css">
<!-- Bootstrap core CSS -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet">
<!-- Material Design Bootstrap -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.7.5/css/mdb.min.css" rel="stylesheet">

<!-- JQuery -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Bootstrap tooltips -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.4/umd/popper.min.js"></script>
<!-- Bootstrap core JavaScript -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
<!-- MDB core JavaScript -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mdbootstrap/4.7.5/js/mdb.min.js"></script>

<!--Navbar -->
<nav class="mb-1 navbar navbar-expand-lg navbar-dark info-color">
  <a class="navbar-brand" href="#">Navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent-4"
    aria-controls="navbarSupportedContent-4" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <div class="collapse navbar-collapse" id="navbarSupportedContent-4">
    <ul class="navbar-nav ml-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">
          <i class="fab fa-facebook-f"></i> Facebook
          <span class="sr-only">(current)</span>
        </a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">
          <i class="fab fa-instagram"></i> Instagram</a>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" id="navbarDropdownMenuLink-4" data-toggle="dropdown" aria-haspopup="true"
          aria-expanded="false">
          <i class="fas fa-user"></i> Profile </a>
        <div class="dropdown-menu dropdown-menu-right dropdown-info" aria-labelledby="navbarDropdownMenuLink-4">
          <a class="dropdown-item" href="#">My account</a>
          <a class="dropdown-item" href="#">Log out</a>
        </div>
      </li>
    </ul>
  </div>
</nav>
<!--/.Navbar -->
<ul>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
  <li>Make page longer to create scrollbar</li>
</ul>

9
задан 5 revs, 2 users 100% 6 March 2009 в 22:53
поделиться

3 ответа

Четыре быстрых вещи:

  1. Войдите в список рассылки CFCDev (или группы Google, как это теперь).

  2. PDF Шаблоны разработки в презентации CFML Sean Corfield является хорошим быстрым чтением.

  3. http://www.cfdesignpatterns.com имеет некоторый хороший материал со ссылками на качество статьи дизайна CFC.

  4. Статья о шаблонах разработки в CFML на Грабит Блог Ручьев-Bilson's.

1
ответ дан 5 December 2019 в 02:08
поделиться

До использования ColdBox Framework я не видел ни одного сообщения об использовании Momentos для захвата свойства в тот момент; однако теперь все мои bean-компоненты имеют метод getMomento () и setMomento (). Я бы рекомендовал это в качестве наилучшей практики для всех, кому необходимо передать информацию из компонента в другой объект DAO.

В моих тестах получение импульса происходит намного быстрее, чем передача компонента и получение свойств. Вот пример:

<cfcomponent name="userBean" output="true" hint="The account bean holds getter/setter information for a user's account.">

<cfproperty name="idUser"           required="true"     type="string"   rules="noZeroLengthString,validEmail"       invalidMessage="failed_data_validation_email"               hint="Key matching the 'accounts' table.">
<cfproperty name="loginEmail"       required="true"     type="string"   rules="noZeroLengthString,validEmail"       invalidMessage="failed_data_validation_email"               hint="E-mail address.">
<cfproperty name="password"         required="true"     type="string"   rules="noZeroLengthString,validPassword"    invalidMessage="failed_data_validation_password"            hint="Password stored in a SHA-512 hash.">

<cffunction name="init" output="false" returntype="userBean" hint="Initalizes the userBean with default values.">
    <cfset variables.instance               = structNew()>
    <cfset variables.instance.IDUser        = 0>
    <cfset variables.instance.loginEmail    = "">
    <cfset variables.instance.password      = "">
    <cfreturn this>
</cffunction>

<!--- SET LOGIN --->
<cffunction name="setLoginEmail" access="public" returntype="void" output="false">
    <cfargument name="email" type="string" required="true" />
    <cfset variables.instance.loginEmail = trim(arguments.email) />
</cffunction>
<cffunction name="getLoginEmail" access="public" returntype="string" output="false">
    <cfreturn variables.instance.loginEmail />
</cffunction>

<!--- ID --->
<cffunction name="setIDUser" access="public" returntype="void" output="false">
    <cfargument name="id" type="numeric" required="true" />
    <cfset variables.instance.IDUser = arguments.id />
</cffunction>
<cffunction name="getIDUser" access="public" returntype="numeric" output="false">
    <cfreturn variables.instance.IDUser />
</cffunction>

<!--- PASSWORD --->
<cffunction name="setPassword" access="public" returntype="void" output="false">
    <cfargument name="password" type="string" required="true" />
    <cfset var pw = arguments.password>
    <cfif len(pw) EQ 0>
        <cfset variables.instance.password = "">
    <cfelse>
        <!---><cfset variables.instance.password = hash(arguments.password, "SHA-512") />--->
        <cfset variables.instance.password = arguments.password>
    </cfif>
</cffunction>
<cffunction name="getPassword" access="public" returntype="string" output="false">
    <cfreturn variables.instance.password />
</cffunction>

<!--- MOMENTO --->
<cffunction name="setMomento" access="public" returntype="void" output="false">
    <cfargument name="momento" type="struct" required="true" />
    <cfset variables.instance = arguments.momento>
</cffunction>
<cffunction name="getMomento" access="public" returntype="struct" output="false">
    <cfreturn variables.instance />
</cffunction>

Приветствия,

Аарон Гринли Мой сайт

0
ответ дан 5 December 2019 в 02:08
поделиться
Другие вопросы по тегам:

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