首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Weex系列(一)之Weex入门准备

    开发者首先可以在本地像撰写 web 页面一样撰写一个 app 的页面(Weex File),然后编译成一段 JavaScript 代码(transformer),形成 Weex 的一个 JS bundle...;在云端,开发者可以把生成的 JS bundle 部署上去(deploy),然后通过网络请求或预下发的方式传递到用户的移动应用客户端(Server————>JS FrameWork);在移动应用客户端里...,WeexSDK 会准备好一个 JavaScript 引擎(JSCore、V8),并且在用户打开一个 Weex 页面时执行相应的 JS bundle,并在执行过程中产生各种命令发送到 native 端进行的界面渲染或数据存储...此处主要推荐下Weex的开发使用工具: Sublime 安装、破解可以参考《mac sublime3 破解版的安装、插件管理和配置》; 安装的一些插件:Emmet、HTML-CSS-JS Prettify...推荐看一些HTML+CSS的基础课程,比较推荐慕课网(真不是广告); Vue也是比较好入门的,只要理解了双向绑定,参考文章《Vue.js——60分钟快速入门》;

    93840

    weex-06-程序的入口文件app.js

    目前 Weex 与 Vue 正在展开官方合作,并将 Vue 2.x 作为内置的前端框架,Vue 也因此具备了开发原生应用的能力,也就是说我们上层是使用vue.js 语法进行代码编写,然后通过打包工具将这些代码打包成...app.weex.js文件,下发都手机端,由SDK进行解析,使用手机原生的组件进行渲染!...F3D0C72A-0354-4FF2-9302-935882CCEB0C.png 我把教程分为两部分内容 执行文件app.weex.js 开发阶段 app 开发阶段 app.js 这个是我们打包时的入口文件...友情提示 如果您打包的文件是用于iOS 和 安卓等客户端渲染的代码,这个el的值可以不用设置,weex客户端的SDK会默认将其挂在根节点上 接下来 我们应该学习的是weex中的组件,但是在这之前..., 先讲解一下weex中的布局和限制

    2.1K20

    深入Weex系列(八)Weex SDK架构分析

    对于二者最核心的能力就是JS引擎与Native的交互能力,别的类如Js框架、组件支持、工具链、扩展、生态等实际上都是附属,都是一项技术的附带产物,为了赢得开发者的支持而做的。...对于Weex而言其实只要保留下Js与Native的交互能力,别的各种产物我们都可以自己实现一份,思路不会有大的差别。...3、Weex框架分析 大家回忆下关于各个组件源码分析的文章中: 首先离不开的就是JSBridge,这是JS与Native交互的桥梁;对应于通信层; JS发回来的每一个指令都会先经过各种Manager的处理...、Component、Adapter等;对应于组件层; 4、Weex框架图 我们再对着框架图分析一遍:WXBridge负责JS引擎与Native的交互、框架层负责将JS指令进行处理、通讯层进行各个线程的切换...、每一个JS指令都对应了组件层的执行。

    91440

    weex官方demo weex-hackernews代码解读(上)

    最新版本的weex已默认将vue.js作为前端框架,而weex-hacknews则是weex官方出品的,首个使用 Weex 和 Vue 开发的 Hacker News 原生应用,在项目中使用了 Vuex...因此这个应用可以作为weex-vue开发的典范,分析该项目代码可以了解如何使用weex技术栈进行开发,实现同一份代码在 iOS、Android、Web 下都能完整地工作。...官方router ,它与Vue.js核心深度集成,使得使用Vue.js构建单页面应用程序变得轻而易举,包含如下特性: 嵌套路由/视图映射 基于组件的路由器配置 路由参数,查询,通配符 集成Vue.js...weex中通过stream提供网络访问功能,通过stream.fetch获取,注意fetch.js里fetch函数返回的是一个Promise对象 关于Promise,不了解的可以查看(https://...官方demo weex-hackernews代码解读(下)

    1.9K50

    深入Weex系列(六)Weex渲染流程分析

    那么本篇文章我们分析Weex的渲染流程,来看一看我们写的Js文件是如何在Native端变成Android里View的。...2、Weex渲染过程 2.1 渲染触发点 在Activity中我们开个某个Weex页面使用的是WXSDKInstance中的render方法,最终也是按照常规套路通过WXBridge调用Js继续处理。...备注:Js引擎处理后回调Native这一部分要复杂的多,我们拆分成几步来看。...,因为我们虽然写的是Js代码但是实际显示的确是Native控件; 那么Weex比原生多的流程就是:与V8的交互、关于Dom的解析与生成、设置属性与赋值(扩展)等; 5、总结 Weex渲染流程的分析难度比...; 在Weex渲染流程的分析中我们第一次接触到了Weex中的线程切换,之后会细说; 建议大家都实际跟踪下Weex的源码,里面有很多可以学习的细节; 欢迎持续关注Weex源码分析项目:Weex-Analysis-Project

    1.3K50

    深入Weex系列(九)Weex SDK可借鉴细节总结

    3、So的加载 So的成功加载对Weex的运行至关重要,毕竟Weex需要V8引擎执行Js与Native的交互,源码中也可以看出So没有加载成功则Weex的各个模块不会执行。...的线程模型: JSBridge在WeexJSBridgeThread负责JS与Native的通信; 切换具体的Dom指令到WeeXDomThread负责关于Dom的各项如:解析、Rebuild Dom...但是有一个细节问题前面没有说到,就是JS与Native交互的方法签名,参数类型只能是String吗?...方法,然后走到WxBridgeManager.callNative方法,会发现函数体内有一行: JSONArray array = JSON.parseArray(tasks); 由此可以断定JS...我们再来总结下Weex是如何实现不同方法签名的交互的: Module注册阶段保存下来Method; JS发送指令调用Module方法传递的原始参数是Json格式; 真正反射调用方法的时候从Method中拿到参数的具体类型

    61710

    深入Weex系列(十)Weex SDK可优化细节思考

    2、反射获取方法 大家知道对于Weex来说,JS引擎与Native的交互本质上就是方法的调用,最终调用的时候必然是反射无疑,但是方法的获取也是反射这一点存在很大优化空间。...先回忆下我们使用Module组件的方法: 继承WXModule; 编写函数体; 给函数体打上注解@JSMethod; 而这些被打上注解的函数则可以拿来与Js进行交互,我们回忆下Module注册的代码,分别有...Native的注册和Js的注册,注册有一步是获取Module组件中打上注解的方法: @Override public String[] getMethods() { if (mMethodMap...这里提供两条解决途径供参考: 对Weex进行异步初始化,绝大多数应用使用Weex不会是整个App都由Weex完成,那么只要能保证Weex的初始化在使用之前完成即可;这点很容易做到毕竟App都有闪屏的时间可以利用...不过这条属于苛责,之前也总结过对于Weex来说我们实际上只需要保存其Js引擎与Native的交互能力即可,别的都属于Weex为了吸引开发者而做的简略能力。

    67030

    weex官方demo weex-hackernews代码解读(下)

    weex-hacknews则是weex官方出品的,首个使用 Weex 和 Vue 开发的 Hacker News 原生应用,在项目中使用了 Vuex 和 vue-router等官方组件。...本文会分析weex-hacknews的代码,学习如何使用weex进行开发,本文是第二部分,第一部分见(http://www.cnblogs.com/xiaoqi/p/weex-hackernews-code-part1...几个关键点如下: 7.1 组件通过props属性传递数据 Vues.js可以使用 props 把数据传给子组件,prop 是父组件用来传递数据的一个自定义属性,子组件需要显式地用 props 选项声明...我们再来看router.js里的createStoriesView方法,是否恍然大悟? ?...$store访问vuex 通过名为stories的computed计算属性访问数据 在created(vue.js生命周期,可理解为jq的ready)时,调用fetchListData,实则是调用FETCH_LIST_DATA

    1.1K80

    weex踩坑记(一)——weex打开iPad模拟器

    首先要吐槽下,同为混合开发框架,React Native的技术社区完善不知道甩了weex几条街,但还是希望自己的经验能为weex开发者带来一些帮助 weex 集成过程在官网已经有比较详细的介绍(官网链接...在项目工程路径下执行 weex run ios 命令后,发现没有 iPad 相关的模拟器,只有 iPhone 相关机型的。总不能和领导说,weex 不支持 iPad 端模拟器调试?...想了想,既然 weex 调用的是 Xcode 中的模拟器,那么肯定会获取到 Xcode 中模拟器列表。如果强行给 weex 调用一个不存在的模拟器会发生什么?...带着疑问,去尝试调了下,weex 果然报了错,而且给出了下面的 weex 内部文件报错路径 ~/.xtoolkit/node_modules/weexpack/lib/utils/index.js 猜测这个可能就是控制调试...weex提示找不到Device 这时,需要重启Mac,然后在 Xcode 中手动添加模拟器。添加完成后,再次运行 weex 命令,即可正常调用模拟器 ? Xcode手动添加模拟器

    1.4K40
    领券