В моем угловом выражении есть фрагмент кода, который повторяется в двух файлах. Я сделал это директивой, чтобы ее можно было повторно использовать. Я отправляю ему некоторые данные.Частицы в угловых, но не ng-include/директивах
Давайте предположим, что это шаблон:
<directive1 data="object"></directive1>
Вот HTML директивы 1
<div class="a">{{data.x}}</div>
<div class="b">{{data.y}}</div>
<div class="c">{{ data.z}}</div>
Теперь, скажем, на какой-нибудь другое место, я хочу иметь только две вышеупомянутые линии шаблон. Поскольку css полностью отличается от этого, я решил создать другую директиву вместо того, чтобы вводить логику коммутации в директиве.
<directive2 data="similarObject"></directive2>
Так что теперь вопрос, я хочу, чтобы это в моей директиве 2 HTML:
<div class="a">{{data.x}}</div>
<div class="b">{{data.y}}</div>
Но так как это будет дублироваться я запутался, как идти о делать это. Я не хочу использовать ng-include
, так как он загружает шаблон асинхронно с клиентской стороны. Я просто хочу, чтобы мой код был модульным, поэтому HTML не дублируется. Я не возражаю, если HTML дублируется после сборки с моей системой глотков.
Нет ли каких-либо включений, которые включены во время компиляции? Поскольку я использую gulp как мою систему сборки, я надеюсь, что что-то вроде этого существует, так что я могу сделать что-то вроде require('./something')
, как будто я делаю это в своем Javascript.
Я хотел бы добавить флаг в вашу первую директиву, а затем добавить 'ng-show = [[ваш флаг здесь]" 'в последний div. –
@JakubJankowski Даже я думал, что. Но я дал упрощенную версию той конкретной проблемы, которая у меня есть. это большой шаблон, и некоторые из его содержимого необходимы в представлении одного контроллера, и некоторые из них необходимы в нижней части одного и того же вида. Т.е. у меня нет выбора, кроме как разделить его каким-то образом или пойти по пути с дублированием :( –
Well , вложенные директивы (вторая, меньшая, будет частью первой, больше) - это единственное решение, о котором я знаю. Но похоже, что вы ищете что-то еще, несносно, я не могу помочь в данный момент –