Coder Social home page Coder Social logo

Comments (4)

adamstep avatar adamstep commented on September 18, 2024

@terryatgithub I'm not sure I understand. How is include and include-inner different from replace and replace-inner? I believe those behaviors should support the document fragment syntax.

So you could do something like:

<view id="menu">
<text action="replace-inner" href="#general-submenu" target="submenu">General</text>
</view>

<view id="submenu" />

<view hide="true">
  <view id="general-submenu">
    <text>Drivers</text>
    <text>Engineer</text>
  </view>
</view>

Would that work? If not, please provide an example XML of what you hope to achieve. Thanks!

from hyperview.

terryatgithub avatar terryatgithub commented on September 18, 2024

yes, in below case, the list of select-single is created dynamically.

  1. first case is : when I try to replace the contents of view id=Occupation_Stage_Zone with the content of view id=Occupation_Reset_Zone.
  2. second case is : when I try to re-do step 1 again later in this xml page, due to logic requirement. So the id Occupation_Reset_Zone and Occupation_Stage_Zone must stay , can not be replaced.
    i.e: themselves can not be replaced, only their children can be replaced.

in this situation, all current actions won't work.

below xml fragment is mixed with some Thymeleaf syntax, because its content is created dynamically.

<!-- stage zone-->
<view hide="true" id="Occupation_Stage_Zone">
    <select-single th:id="${parentTitle}" th:each="parentTitle : ${occupations.keySet()}" th:value="${childOccupation}" >
        <option style="content-item" th:value="${child.getJobTitle()}" th:each="child : ${occupations.get(parentTitle)}" >
            <text style="content-label" th:text="${child.getJobTitle()}"></text>
        </option>
    </select-single>
</view>
<!-- reset zone-->
<view hide="true" id="Occupation_Reset_Zone">
    <select-single th:id="${parentTitle}" th:each="parentTitle : ${occupations.keySet()}"  >
        <option style="content-item" th:value="${child.getJobTitle()}" th:each="child : ${occupations.get(parentTitle)}" >
            <text style="content-label" th:text="${child.getJobTitle()}"></text>
        </option>
    </select-single>
</view>

and the difference between replace and include is described as below pic .
if the content of source is a list and created dynamically, there is no action can achieve below include effect.
what do you think about it?
thank you very much.

image

from hyperview.

terryatgithub avatar terryatgithub commented on September 18, 2024

@terryatgithub I'm not sure I understand. How is include and include-inner different from replace and replace-inner? I believe those behaviors should support the document fragment syntax.

So you could do something like:

<view id="menu">
<text action="replace-inner" href="#general-submenu" target="submenu">General</text>
</view>

<view id="submenu" />

<view hide="true">
  <view id="general-submenu">
    <text>Drivers</text>
    <text>Engineer</text>
  </view>
</view>

Would that work? If not, please provide an example XML of what you hope to achieve. Thanks!

that is: later when I need to re-do the replace action above, it won't work. because the id=submenu has been replaced and not exist anymore. meantime there will be two fragment which id=general-submenu.

from hyperview.

terryatgithub avatar terryatgithub commented on September 18, 2024

Because of this wonderful realization in #309 by Adam, this issue is fiexd.

from hyperview.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.