首页
学习
活动
专区
工具
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分钟快速入门》;

90940

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中的布局和限制

2K20

JS】预编译详解

文章目录 ✔️前言 内容 作用域 `global`、`window`、`document`的区别 预编译 1.前奏 2.四部曲 3.全局对象 1.预编译部分 2.详细介绍——IIFE 总结 ✔️前言...本篇给大家带来js语法核心基础之预编译的讲解 内容 作用域 JS有两种作用域:全局作用域和函数作用域 内部的作用域能访问外部,反之不行;访问时从内向外依次查找 如果在内部的作用域中访问了外部,则会产生闭包...) 闭包是由作用域产生的一种现象 JS 中所有函数都是闭包 内部作用域能访问的外部,取决于函数定义的位置,和调用无关 作用域内定义的变量、函数声明会提升到作用域顶部——预编译;在JS中只有var和function.../js/1.js"> //1.js var uncover = (function () { var a = 1; // 避免污染 var

1.2K20

深入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指令都对应了组件层的执行。

88940

深入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.2K50

深入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中拿到参数的具体类型

59410

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 SDK可优化细节思考

2、反射获取方法 大家知道对于Weex来说,JS引擎与Native的交互本质上就是方法的调用,最终调用的时候必然是反射无疑,但是方法的获取也是反射这一点存在很大优化空间。...先回忆下我们使用Module组件的方法: 继承WXModule; 编写函数体; 给函数体打上注解@JSMethod; 而这些被打上注解的函数则可以拿来与Js进行交互,我们回忆下Module注册的代码,分别有...Native的注册和Js的注册,注册有一步是获取Module组件中打上注解的方法: @Override public String[] getMethods() { if (mMethodMap...; 参考EventBus不同版本的改进,我们也可以将Weex的运行时注解改为编译时注解,这样就将在运行时的反射工作挪换到编译时,这种方式显然更好,也不需要再进行异步初始化; 3、适配的问题 对于Weex...不过这条属于苛责,之前也总结过对于Weex来说我们实际上只需要保存其Js引擎与Native的交互能力即可,别的都属于Weex为了吸引开发者而做的简略能力。

64930
领券