All Projects → wsssheep → Cocos_creator_mvvm_tools

wsssheep / Cocos_creator_mvvm_tools

Licence: mit
适用于cocos creator 的 mvvm 的工具 集,摆脱传统设置节点属性来控制 UI 的方式

Programming Languages

typescript
32286 projects

Labels

Projects that are alternatives of or similar to Cocos creator mvvm tools

Android Jetpack Demo
🔥 快速入门Android Jetpack以及相关Kotlin、RxJava、MVVM等主流技术,独立构架App的基础技能
Stars: ✭ 335 (-15.83%)
Mutual labels:  mvvm
Lynket Browser
🌐 A better browser for Android using the Custom Tab protocol. Previously called Chromer.
Stars: ✭ 364 (-8.54%)
Mutual labels:  mvvm
Orchestra
Orchestra is a composable shell and WPF framework built on top of Catel
Stars: ✭ 373 (-6.28%)
Mutual labels:  mvvm
Mvvmcross
The .NET MVVM framework for cross-platform solutions, including Xamarin.iOS, Xamarin.Android, Windows and Mac.
Stars: ✭ 3,594 (+803.02%)
Mutual labels:  mvvm
Handycontrols
Contains some simple and commonly used WPF controls based on HandyControl
Stars: ✭ 347 (-12.81%)
Mutual labels:  mvvm
Pix Ezviewer
一个支持免代理直连+多种额外特性功能优化的第三方 Pixiv android 客户端 | A third-party Pixiv Android client with modern design and many other enhancements
Stars: ✭ 367 (-7.79%)
Mutual labels:  mvvm
Moko Mvvm
Model-View-ViewModel architecture components for mobile (android & ios) Kotlin Multiplatform development
Stars: ✭ 329 (-17.34%)
Mutual labels:  mvvm
Mvvmsmart
基于谷歌最新AAC架构,MVVM设计模式的一套快速开发库,整合ViewModel+Lifecycles+Navigation+DataBinding+LiveData+Okhttp+Retrofit+RxJava+Glide等主流模块,满足日常开发需求。使用该框架可以快速开发高质量、易维护的Android应用。 项目组会持续维护,请放心使用.欢迎Start并Fork交流.
Stars: ✭ 382 (-4.02%)
Mutual labels:  mvvm
Stackzy
💻 A cross-platform desktop application to identify libraries used inside an android application. Made possible by Compose Desktop ⚡
Stars: ✭ 307 (-22.86%)
Mutual labels:  mvvm
Themovies
🎬 A demo project for The Movie DB based on Kotlin MVVM architecture and material design & animations.
Stars: ✭ 374 (-6.03%)
Mutual labels:  mvvm
Pokedex Ar
🦄 Android Pokedex-AR using ARCore, Sceneform, Hilt, Coroutines, Flow, Jetpack (Room, ViewModel, LiveData) based on MVVM architecture.
Stars: ✭ 347 (-12.81%)
Mutual labels:  mvvm
Jetpack Wanandroid
Kotlin+Jetpack+Coroutines+Retrofit+koin 完成的MVVM 组件化客户端 🔥🔥
Stars: ✭ 353 (-11.31%)
Mutual labels:  mvvm
Paonet
【MVVM+RxJava2+AspectJ】泡网第三方客户端,网站主页:http://www.jcodecraeer.com/index.php
Stars: ✭ 374 (-6.03%)
Mutual labels:  mvvm
Sugar
A lightweight and powerful JavaScript MVVM library. Used for production or learning how to make a full MVVM.
Stars: ✭ 345 (-13.32%)
Mutual labels:  mvvm
Zhumulangma
高仿喜马拉雅Android客户端,单activity多fragme组件化架构(新增ams版)
Stars: ✭ 377 (-5.28%)
Mutual labels:  mvvm
Mvvm Dialogs
Framework simplifying the concept of opening dialogs from a view model when using MVVM in WPF or UWP
Stars: ✭ 335 (-15.83%)
Mutual labels:  mvvm
Disneycompose
🧸 A demo Disney app using Jetpack Compose and Hilt based on modern Android tech-stacks and MVVM architecture.
Stars: ✭ 368 (-7.54%)
Mutual labels:  mvvm
Rxviewmodel
ReactiveViewModel-esque using RxSwift
Stars: ✭ 392 (-1.51%)
Mutual labels:  mvvm
Westore
更好的小程序项目架构
Stars: ✭ 3,897 (+879.15%)
Mutual labels:  mvvm
Lcg
吾爱破解第三方安卓应用
Stars: ✭ 371 (-6.78%)
Mutual labels:  mvvm

cocos_creator_mvvm_tools 0.1.1

版本说明

v0.1.0 - Typescript 的 稳定版本 v0.1.1 - 修复VMParent onLoad顺序的错误,调整部分组件初始化值的时间

版本计划

移植 Cocos Creator 3D 1.2 版本,增强功能 移植 Cocos Creator 3.0 版本 (待定)

简介

适用于cocos creator 的 mvvm 的工具 集,摆脱传统MVC设置节点属性来控制 UI 的方式。你可以更快捷、更细致地处理UI的表现效果。不写一行代码完成复杂的显示逻辑。设计这个框架的目地就是为了解决 数据和节点状态变化切换的麻烦关系。

更新

增加JS 调用 TS 用例 2019/6/1

功能

  1. 不需要写任何代码,设置脚本组件的参数即可 将 监听路径的数值 可以立刻得到反馈。
  2. 更加灵活的获取数据变化时的事件,实现各种难以处理的细节交互。
  3. 彻底分离UI处理 和 游戏逻辑处理,专注处理业务逻辑。

注意事项

  1. 查错困难: 一旦绑定组件后,想要根据情况查找和调查bug位置,会变得困难一些。(也是组件化的缺点)
  2. 设计数据模型后不能随意改变属性名,一旦需要修改就必须打开Cocos 来改动,这会比较依赖于编辑器操作。所以在内部提供了一个小组件来批量替换路径名。

项目结构

核心脚本文件存放在 assets\Script\modelView 路径,要使用必须全部引入

  • JsonOb.ts - 实现基础的 观察者模式, 改变绑定的数据会自动调用回调函数。你可以随时替换成自己写的观察者。
  • ViewModel.ts - VM的核心模块,动态管理ViewModel,使用 cc.director.emit 通知 游戏内的节点组件改变状态。
  • VMBase.ts - VM监听核心组件,用于接收ViewModel 的数值变动消息。VMCustom /VMEvent 之类的衍生组件都是继承自VMBase
  • VMParent.ts - VM父组件,适合 prefab 弹窗使用, 它将数据绑定在继承 VMparent 的组件上,只属于此次创建的实例。 需要以特殊方式继承使用。

用法说明

  • 基本用法

    导入框架 - 导入 assets\Script\modelView 中的所有脚本 建立数据模型 - 任意位置新建一个数据脚本,定义自己的数据模型,使用VM.add(data,'tag') 添加viewModel。 可以通过VM引用该数据,或者自己全局管理该数据模型。 挂脚本 - 编辑器中直接添加组件 VMCustom ,它会自动识别绑定到需要设置值的组件和组件的属性,比如cc.Label、cc.Progress等。 你只要填写对应的watchPath, 就会自动赋值到组件的属性上。比如填写 global.play.hp 改数据 - 在游戏中任意改变 global.play.hp的值,对应的label 就会自动改变数值。

  • 全局注册VM: (全局自由使用路径) VM.add(data,'tag'); //

  • 局部组件使用VM: (只在组件内使用的相对路径) 1.继承VMParent 组件 2.在组件内设置 data 数据(data属性) 3.相对路径 使用 *.name 的方式设置 watchPath,VMParent 会在 onLoad 的时候自动将 * 替换成 实际的 ViewModel 标签,以便监听数据变化。

帮助说明

具体使用方式请查看附带文档:/docs

[使用文档]( https://github.com/wsssheep/cocos_creator_mvvm_tools/tree/master/docs

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].