跳转至内容
  • 最新
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
  • 太微中文教程
  • 新插件投票看板
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
太微中文论坛icon

太微中文论坛

  1. 首页信息流
  2. 版块
  3. 讨论
  4. action-log超好用

action-log超好用

已定时 已固定 已锁定 已移动 讨论
3 帖子 2 发布者 60 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 机杼机 离线
    机杼机 离线
    机杼
    写于 最后由 编辑
    #1

    以前怎么不记得有这么个东西。在写wikitext时,特别是经常要用到各种微件和宏,变量什么的,经常就不知道怎么搞了。用这个一查,方便多了。

    \define actions()
    <$action-log/>
    <$action-setfield $tiddler="$:/state/x/test" text=<<event-navigateTo>> />
    \end
    
    
    <$button class="card">
    <$action-setfield $tiddler="$:/state/x/test" text={{{ [!is[system]sort[title]]-[tag[X]] +[after{$:/state/x/test}] }}} />
    
    <$messagecatcher $tm-navigate=<<actions>> >
    
    
    <%if [{$:/state/x/test}compare:number:gteq[1]] %>
    
      <$transclude tiddler={{{ [[$:/state/x/test]get[text]] }}} mode="block"/>
    
    <%else%>
    
      恭喜你,你已经读完了所有内容了!!!
    
    <$button>
    <$action-setfield $tiddler="$:/state/x/test" text="1.1.1" />
    回到第一章
    </$button>
    
    
    <%endif%>
    
    </$messagecatcher>
    
    </$button>
    

    我这个示例要处理的是,让文本中跳转的链接内容直接显示在这个文本当中。所以用到了$messagecatcher微件,但和绝大多数文档内容一样,几乎没有什么新手友好的解释。

    因为<$action-setfield $tiddler="$:/state/x/test" text=<<event-navigateTo>> />这一段中,我把<<event-navigateTo>> 改成任意一个条目都能实现。所以我估计肯定是有一个变量名的,但我并不知道这个变量名是什么,怎么写。

    然后在开头的define中加入了action-log微件,直接把所有内容都显示出来了。

    1d1d249f-dfdb-4f83-b7ef-b0a7c47a764d-image.png

    bba3d092-7c3c-4fe1-b407-97baac53fd4f-image.png

    直接对应查找就可以了。

    透过这个控制台输出,我发现了之前插件里写的宏。那这样看的话,是不是每一个宏在处理TiddlyWiki的交互逻辑时都会运行一遍呢?那一些不常用的宏或许可以避免来提高性能了。

    1 条回复 最后回复
    1
    • 机杼机 离线
      机杼机 离线
      机杼
      写于 最后由 编辑
      #2

      但缺点是这个控制了所有的链接跳转,所以点击外部链接不会跳转到浏览器打开,只会显示下一个章节。

      我去英文论坛上搜索了一下,没发现解决方案。

      1 条回复 最后回复
      0
      • linonetwoL 离线
        linonetwoL 离线
        linonetwo
        写于 最后由 编辑
        #3

        log 出来的宏只是字符串,只占用很小的内存。只有执行的时候才会解析字符串,才会消耗 CPU,不过也不多。

        1 条回复 最后回复
        0

        • 登录

        • 没有帐号? 注册

        • 登录或注册以进行搜索。
        Powered by NodeBB Contributors
        • 第一个帖子
          最后一个帖子
        0
        • 最新
        • 版块
        • 标签
        • 热门
        • 用户
        • 群组
        • 太微中文教程
        • 新插件投票看板