导航:首页 > 软件资讯 > 怎么改变appjs的状态码

怎么改变appjs的状态码

发布时间:2022-07-16 14:08:07

① app 与 内嵌webview同步登录状态,有哪些解决方案安全性如何

目前使用的方案:
1.h5通过js和app交互调用app的token
2.拿到token后使用ajax做异步登录并刷新页面
目前的缺点:
1.会多次刷新页面
2.通过js调用时H5需要做部分改动
优化的方向:
A.APP登陆状态的变化是请求页面,登录后使用webview调用对应域名下的接口实现H5的登录
B.每次请求H5url增加get登陆的信息,例如访问 index.php变成 index.php?a=xxx 通过附加信 息同步登录状态
优化的方案不知道那个更好一点

② nodejs api怎么实现私有调用

你可以通过如下的步骤,轻松进入开发状态
1,获得代码
https://github.com/mz121star/taobao.git
2,进入项目目录,执行如下命令安装项目的依赖包
npm install
3,修改appconfig.js文件中的Appkey和Appsecret的值(该值从你的应用证书页面获得)
AppKey:"从淘宝获得的Appkey",
AppSecret:"从淘宝获得的AppSecret"
到此为止,你已经完成了项目运行起来所需要的全部步骤,你可以通过如下命令启动web服务.

③ 使用mobx怎样管理javascript应用状态

1. 通过MobX来解决
   MobX 是一个简单、高效的前端状态管理脚本库。 根据文档,Just do something to the state and MobX will make sure your app respects the changes。
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 37,
fullName: function () {
this.firstName + ' ' + this.lastName;
}
});

注意下区别,mobx.observable是以下做的唯一区别,再来看下console.log输出的内容。
mobx.autorun(function () {
console.log('first name: ' + person.firstName);
});

person.age = 38; // 不打印内容
person.lastName = 'RUBY!'; // 仍然不打印内容
person.firstName = 'Matthew!'; // 打印内容

通过使用autorun, MobX只会检测使用到的内容。如果觉得不够清楚,来看下下面的:
mobx.autorun(function () {
console.log('Full name: ' + person.fullName);
});

person.age = 38; // 不打印内容
person.lastName = 'RUBY!'; // 打印内容
person.firstName = 'Matthew!'; // 打印内容

相信你已经理解了。
MobX核心概念
observer
var log = function(data) {
$('#output').append('<pre>' +data+ '</pre>');
}

var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 34
});

log(person.firstName);

person.firstName = 'Mike';
log(person.firstName);

person.firstName = 'Lissy';
log(person.firstName);

MobX可观察的对象都是普通的对象。这个例子中我们没有观察任何内容,这里例子也展示了怎样将MobX使用到项目中。只需要使用mobx.observable()或 mobx.extendObservable()就可以了。
autorun
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 0
});

mobx.autorun(function () {
log(person.firstName + ' ' + person.age);
});

// this will print Matt NN 10 times
_.times(10, function () {
person.age = _.random(40);
});

// this will print nothing
_.times(10, function () {
person.lastName = _.random(40);
});

当变量值改变时,肯定想做一些事情,所以使用autorun(),将会在任何一个观察的内容改变时触发回调。注意下上面的例子中age改变时autorun()不会触发。
computed
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 0,
get fullName () {
return this.firstName + ' ' + this.lastName;
}
});
log(person.fullName);

person.firstName = 'Mike';
log(person.fullName);

person.firstName = 'Lissy';
log(person.fullName);

2. 注意下fullName()方法没有使用参数和get的用法,MobX会自动创建一个计算的值。。person.fullName有什么不同的地方?这是一个函数,但是没有调用就获取到了结果!通常,使用的是person.fullName(),而不是person.fullName。这里就是遇到的第一个getter函数。
不仅如此,MobX还会监听计算值得依赖的变量,并且只在它们修改的时候运行触发更新。如果没有修改,将会直接返回之前缓存中的值。看下面一个例子。
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 0,
get fullName () {
// Note how this computed value is cached.
// We only hit this function 3 times.
log('-- hit fullName --');
return this.firstName + ' ' + this.lastName;
}
});

mobx.autorun(function () {
log(person.fullName + ' ' + person.age);
});

// this will print Matt Ruby NN 10 times
_.times(10, function () {
person.age = _.random(40);
});

person.firstName = 'Mike';
person.firstName = 'Lissy';

3. 这里使用了person.fullName很多次,但是函数只有在firstName和lastName修改时才会运行。这就是MobX可以提供应用速度的一种方式。
使用MobX进行项目实践
直接看例子:
<h1>Test</h1>
<script>
var person = {
events: {},
firstName: 'Matt',
lastName: 'Ruby',
age: 37,
fullName: function() {
return this.firstName + ' ' + this.lastName;
},
setPersonData: function(personData) {
$.extend(this, personData);
$(this.events).trigger('changed', personData);
}
};
var renderCount = 0;
$(person.events).on('changed', function() {
renderCount += 1;
$('h1').text(person.fullName() + ' render count: '+ renderCount);
});

// this will trigger every time
_.times(10, function() {
person.setPersonData({age: _.random(20)});
});
</script>

4. 这里name被重复渲染了10次,尽管没有修改firstName或lastName,可使用多个事件来优化这里,在渲染之前做判断。但是太复杂了。下面是MobX的例子;
<h1>Test</h1>

<script>
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 37,
get fullName () {
return this.firstName + ' ' + this.lastName;
}
});
var renderCount = 0;
mobx.autorun(function() {
renderCount++;
$('h1').text(person.fullName + ' render count: ' + renderCount);
});

// this will trigger the render one time
_.times(10, function() {
person.setPersonData({
age: _.random(20)
});
});
</script>

注意下这里为什么没有事件、触发器或on绑定。使用MobX,你会使用修改后的最新值。而且它只被渲染一次,这是因为我们没有修改内容时autorun只是一直在监听。
// observable person
var person = mobx.observable({
firstName: 'Matt',
lastName: 'Ruby',
age: 37
});

// rece the person to simple html
var printObject = function(objectToPrint) {
return _.rece(objectToPrint, function(result, value, key) {
result += key + ': ' + value + '<br/>';
return result;
}, '');
};

// print out the person anytime there's a change
mobx.autorun(function(){
$('#person').html(printObject(person));
});

// watch all the input for changes and update the person
// object accordingly.
$('input').on('keyup', function(event) {
person[event.target.name] = $(this).val();
});

这里我们能编辑person的所有信息来观察输出的内容情况,现在这个例子中有个小小的问题,这里input的值和person的值不同步,这里改下:
mobx.autorun(function(){
$('#person').html(printObject(person));
// update the input values
_.forIn(person, function(value, key) {
$('input[name="'+key+'"]').val(value);
});
});

这里虽有重新渲染。看到的就是为什么很多人选择使用React的原因。React允许你将输出内容拆分小的组件进行个别的渲染。
MobX不一定在实际项目中使用,如果需要这种细粒度的操作使用React就可以了。当在实际项目中使用MobX和jQuery时,使用autorun()就可以解决很多问题了。

④ 如何组织大型JavaScript应用中的代码

以下为CSDN编译:地板上堆放的衣服首先,我们来看看angular-seed,它是AngularJS应用开发的官方入门项目,其文件结构是这样的:css/img/js/app.jscontrollers.jsdirectives.jsfilters.jsservices.jslib/partials/看起来就像是把衣服按类型堆在地板上,一堆袜子、一堆内衣、一堆衬衫等等。你知道拐角的那堆袜子里有今天要穿的黑色羊毛袜,但你仍需要花上一段时间来寻找。这种组织方式很凌乱。一旦你的代码中存在6、7个甚至更多的控制器或者服务,文件管理就会变得难以处理:很难找到想要寻找的对象,源代码控制中的文件也变更集变得难懂。袜子抽屉常见的JavaScript文件结构还有另一种形式,即按原型将文件分类。我们继续用整理衣服来比喻:现在我们买了有很多抽屉的衣柜,打算将袜子放在其中一个抽屉里,内衣放在另一个抽屉,再把衬衫整齐地叠在第三个抽屉……想象一下,我们正在开发一个简单的电子商务网站,包括登陆流程、产品目录以及购物车UI。同样,我们将文件分为以下几个原型:models(业务逻辑和状态)、controllers以及services(HTTP/JSON端点加密),而按照Angular默认那样非笼统地归到“service”架构。因此我们的JavaScript目录变成了这样:controllers/LoginController.jsRegistrationController.jsProctDetailController.jsSearchResultsController.jsdirectives.jsfilters.jsmodels/CartModel.jsProctModel.jsSearchResultsModel.jsUserModel.jsservices/CartService.jsUserService.jsProctService.js不错,现在已经可以通过树形文件目录或者IDE快捷键更方便地查找文件了,源代码控制中的变更集(changeset)也能够清楚地描述文件修改记录。虽然已经获得了极大的改进,但是仍有一定的局限性。想象一下,你现在正在办公室,突然发现明天有个商务出差,需要几套干洗的衣服,因此给家里打电话告诉另一半把黑色和蓝色的西装交给清洁工,还有黑纹领带配灰色衬衫、白衬衫配纯黄领带。如果你的另一半并不熟悉衣柜,又该如何从三条黄色的领带中挑出你的正确需求?模块化希望衣服的比喻没有让你觉得过于陈旧,下面举一个实例:你的搭档是新来的开发者,他被要求去修补这个复杂应用中的一处bug。他扫过这些文件夹,看到了controllers、models、services等文件夹整齐地排列着,但是他仍然不清楚对象间的依赖关系。处于某些原因,他希望能够重用部分代码,这需要从各个文件夹中搜集相关文件,而且常常会遗漏某些文件夹中的对象。信或不信,你确实很少会在新项目中重用很多代码,但你很可能需要重用登陆系统这样的整个模块。所以,是不是按功能划分文件会更好?下面的文件结构是以功能划分后的应用结构:cart/CartModel.jsCartService.jscommon/directives.jsfilters.jsproct/search/SearchResultsController.jsSearchResultsModel.jsProctDetailController.jsProctModel.jsProctService.jsuser/LoginController.jsRegistrationController.jsUserModel.jsUserService.js虽然现实世界中有空间限制,难以随意整理服装,但是编程中类似的处理却是零成本的。现在即使是新来的开发者也能通过顶级文件夹的命名理解应用的功能,相同文件夹下的文件会存在互相依赖等关系,而且仅仅通过浏览文件组织结构就能轻易理解登录、注册等功能的原理。新的项目也可以通过复制粘贴来重用其中的代码了。使用AngularJS我们可以进一步将相关代码组织为模块:var userMole = angular.mole('userMole',[]); userMole.factory('userService', ['$http', function($http) { return new UserService($http); }]); userMole.factory('userModel', ['userService', function(userService) { return new UserModel(userService); }]); userMole.controller('loginController', ['$scope', 'userModel', LoginController]); userMole.controller('registrationController', ['$scope', 'userModel', RegistrationController]);如果我们将UserMole.js文件放到user文件夹,它就成了这个模块中使用到的对象的“manifest”,这也是适合RequireJS或者Browserify中放置某些加载指令的地方如何处理通用代码每个应用都会有某些代码广泛使用在多个模块中,我们常常使用名为“commom”或者“shared”的文件夹来存放这些功能代码。又该如何处理这些通用代码呢?如果模块中的对象需要直接访问几个“通用”对象,为这些对象提供几个Facade(外观模式)。这有助于减少每个对象的依赖者,而过多的关联对象通常意味着糟糕的代码结构。如果“通用”模块变得过于庞大,你需要将它按功能领域细分为多个子模块。确保每个应用模块只使用它需要的“通用”模块,这即是SOLID中“接口隔离原则”的变种。在根范围($rootScope)添加实体,这样子范围也可以使用,适合多个控制器都依赖同一个对象(比如“PermissionsModel”)的情况。在解耦两个不明确互相引用的组件时,请使用事件。Angular中Scope对象的$emit、$broadcast以及$on方法使得这种方式变得现实。控制器能够触发一个事件来执行某些动作,然后再动作结束后收到相应地通知。

⑤ 在WEB中如何用JS打开APP

先看一下Web中,我们给h1标签添加一个onclick事件,让它在被点击之后,修改当前的url。
Web中的HTML代码:
<html>
<head>
<script>

function getInfo(name)
{
window.location = "/getInfo/"+name;
}

</script>

</head>

<body>
<h1 onclick="getInfo('why')">Name</h1>
</body>

</html>

iOS中,先拖拽WebView,访问localhost,然后通过WebView的委托事件监听url跳转操作,并且把跳转截取下来。
也就是说,在onclick的时候,普通浏览器灰跳转到那个url,但是在iOS的这个WebView里面,这个跳转会被拦截,
用这种方式可以巧妙地实现JS调用iOS的原生代码:

//
// DWViewController.m
// DareWayApp
//
// Created by why on 14-6-3.
// Copyright (c) 2014年 DareWay. All rights reserved.
//

#import "DWViewController.h"

@interface DWViewController ()

@property (weak, nonatomic) IBOutlet UIWebView *myWebview; // 主页面

@end

@implementation DWViewController

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.

// 适配iOS6的状态栏
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
_myWebview.frame = CGRectMake(0,20,self.view.frame.size.width,self.view.frame.size.height-20);
}

// 加载制定的URL
NSURL *url =[NSURL URLWithString:@"http://localhost"];
NSURLRequest *request =[NSURLRequest requestWithURL:url];
[_myWebview setDelegate:self];
[_myWebview loadRequest:request];

}

// 网页中的每一个请求都会被触发
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{

// 每次跳转时候判断URL

if([request.mainDocumentURL.relativePath isEqualToString:@"/getInfo/why"])
{
NSLog(@"why");
return NO;
}

return YES;
}

- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

⑥ vue的hook能将同一功能的代码单独抽成1个方法吗

作者 | 零一 责编 | 张红月
rex的作者是谁?Dan,他的全称叫做Dan Abramov,同时他也是React的核心成员之一
为什么我标题说Dan字节一面挂了呢?
因为昨天晚上字节的web infra团队连线了远在国外的Dan,并且提前收集了200多个网友的问题,从中精选了20几个,让Dan来给一一解答,在其中一个问题的回答中,Dan说他从来没用过Vue,hhhhh,所以有小伙伴就说搞了个段子
Q1: 如何看待rex
我不会推荐任何一个库,要看使用场景吧。比如针对数据和缓存的库,就该用对应的库
Q2: 很多开发者认为react的入门很难,有没有什么快速上手的方法
我认为这取决于大家为什么认为React难,可能难点不同,因为你刚学javascript,这是你的入门,那就会觉得React很难。对于其它库例如Vue,你可以运用一些已经封装好的方法,慢慢的使用中你可以学会一些东西。而react你一上手就要编程,这就是难点所在。如果有人觉得入门很难的话,可能就意味着他们不知道怎么去做一个单页的应用程序,可能不是react本身的问题,但他们会认为是react难以理解的问题。可以先把javascript熟悉了,再来用React就很容易了。
Q3: 对于已经开始用react的人,给一些建议避坑
很重要的一点就是你要用Hook的话,我们推荐使用正确的方法把它们引入你的项目当中。对于react来说有两点,一点是可模仿性,新手可以去学别人的库,参考着去学习。另一点就是对于react渲染来说,你可以把它想成是一个计算,你不需要做很多工作,你只需要返回你需要的react UI即可,这很重要
Q4: 现在react更多关注的是函数编程,js却不是这样的
我认为react的确比其它工具更加偏向于函数,但真正喜欢函数编程的开发者会认为react并不是一个函数编程的工具。我们也不会把组件分解成一个个很小很小的函数。React其实是借用了一些函数的理念,并且基于函数,但不完完全全是一个函数编程工具
Q5: 现在前端发展迅速,你是怎么跟上技术发展速度的
我不是这样想的,但有可能是我没有跟紧潮流,可能是每隔几年就有这样的趋势,但很多像现在的新技术跟以前的技术概念其实很相似,这种情况下,我不会被这种新兴的技术惊到,因为他们对我来说没有什么太大的不同,所以这其实就是对老事物一种新的理解,我们围绕一些基本概念做一些开发而已。
Q6: react在未来如何进步呢?
你认为现在存在哪些重大的问题呢?对我来说我会注意到很多问题都是不同的,不同的问题用不同的手段去解决,其中一个问题比如说, 动画领域我们还没有涉足,很多ui框架会针对一些不同的问题提供一些解决方案, 我的感觉是这些领域看起来不一样,但其实都类似,我们可以互相结合。 以后我们可能会有一个组件工具,或者提供更多的功能,这些功能是紧密结合的,这是我们希望的。
Q7: Concurrent mode,从18版本开始最新被放出来的模式,设计时面临的挑战有哪些?
我想说当前还没有被发行出来,所以我们可以去官网看一下blog,上面有关于版本18更多的信息,关于他有什么内容,信息等等。我们现在有相关的工作小组,并且每天从社区邀请50个人左右帮我们一起合作去发行18版本,保证整个生态系统和他发行的版本是一致的,我们在这方面已经有了很多的讨论,大家都可以阅读,评论,获取更多的信息。我们所做出来的一个大的改变就是我们没有mode了,它不叫concurrent mode,而负责的是render的一种机制,他不会有一个延长等待的时间,比如你如果有输入,他也可以同步的处理,其实他是一种同步多线的处理,这也是我们一直想攻克的难关。这才有了我们现在的18 Alpha版本。
Q8: 很多人会将react跟vue做对比,你是怎么看待这两个框架的?
我自己没用过vue的(what???React核心成员之一竟然没有用过Vue,此处@尤大),所以没法做很细节和全面的对比,从设计方法上来说,我们存在一些区别,比如vue直接改变状态,这有一些好处,你可以随心所欲的想写代码就写代码,很多人都很喜欢这样的方式,但对于我们来说,我们会做一些transition,我们方式不一样,所以从技术来说我们有很大的差异,是两种完全不同的方向。vue可能是基于50年的编程的沉淀,对于我们来说基于我们自己的做法,当然他们的做法在技术上来说也是很棒的,vue更多会用一些实用的技术解决实用的问题,比如提供更加便利的动画的解决方案,更便利的模板,但对于react来说,我们不想去做一些我们没有办法充分相信的解决方案,所以我们给出的东西可能没有那么直接便利,比如我们想做动画功能的话,我们并不会去标准化一些存在的东西,我们会有自己对于动画的想法,这跟现在很多框架都是不一样的,vue可以更快的拿到你所想要的,但react我们有更丰富的库,你就可以学会怎么去做这些事,这就像安卓和ios一样,ios其实很多功能都不包括的,但是它可以帮助你可以更好的完成一些事情。
Q9: vue3停止用flow了,react还用flow?
我并不认为这是一个很关键的问题,我认为这主要取决于库本身是怎么写的。他更多的是关注框架本身如何建立的,跟用户没啥关系,它并不会影响用户使用react的过程,我们并不在意这个点,我们并不是不能改变,只是不太值得
Q10: 你对一些新框架有什么看法,他们都没有使用vdom
我并没有多么细致的使用过这些工具,没有什么深度的见解,的确有很多的设计他们是很棒的,而且大家都走的不同的路,可能是完全相反,对于vdom这个词我不太喜欢,大家理解都不太一样,我认为这个跟性能没什么关系,我不太使用这个称呼,因为这使人很困惑,他指的是UI的内存,我们想让他保留下来,因为他能给我们更多的选择。对于一些复杂的功能,我们的解决方式可能会使用UI的不同版本,比如最左边是0%,右边是100%,中间会有一个滚动条,在调整滚动条只需要调整帧就好了,我们如何产生这种帧,就需要很多的ui进行协助,这就需要vdom的协助,这和性能的关系不大。假设我们要看整个app的性能,需要看你每个组件的功能是什么,它可以做什么,看看app背后的代码是什么,而不是单纯对几行的代码做分析和解读。
Q11: 目前用的大多是vue和react,你对于前端来说如何看待五年后的前端领域
我对这个问题的理解是,ui代码有很多不同的方式,比如放在服务器上还是客户端上,如何去整理它,那我觉得在这方面 框架也可以解决所有的问题,我觉得next.js是可以把react相关的观念去简化,所以他有可能会取代目前的功能,如果大家对Server Component 感兴趣的话,你的思考模式是围绕组件进行的,这是可控的,那你也可以做出自主的决定,吧什么样的组件在服务器去运转,不会占用你太长的时间,代码也是一样的,他们会更加的清晰,你就不需要去思考你是在做渲染还是做别的事情,这是一种很不错的优化。
Q12: 对于找工作的同学来说,什么样的科技公司更吸引人?
我觉得你身边的人比较厉害,你能学到很多东西,这是良性的工作环境,可以学习新的知识,而且还需要你的自主性会比较强,不能命令式的工作(其实当时弹幕里全是一个字:钱!)
Q13: 说说你的个人经历,你刚加入Facebook,如何学习react的相关知识的
react代码其实比较复杂,在最开始需要研究代码,去熟悉,主要还是去了解整个的架构,把它了解透彻了没问题了,就Ok了。还会给一些人提供帮助,我会在一些公开的平台上帮助别人解决问题,回答他们的问题,在那段时间阅读了各种人提出的问题,几千条,这是一个非常好的方法帮我熟悉自己所做的东西,帮他们解决问题,也对自己有帮助。
Q14: react核心团队或社区如何维护这么大的code
我们遇到很多有趣的挑战,我并不认为我们的code很大,我们也是在慢慢的学习如何运行这样的项目,我们有超过5000次的测试。react用户只会用来rendering,不会深入到我们库里。如果你去看我们的代码,我们可能会有一个老js和新Js(即源码文件中以.old.js或.new.js为结尾的文件),它们基本上是相同的,我们这么做是为了应对一些有风险的改变,我们没有看到回归,我们就会把新的改变复制到旧的当中,这听起来很奇怪,但效果还不错。
我认为Facebook就像一个测试机器一样,我们会在工作中验证,我们看到了百分之一的回归,评论下降了1%,我们就花了一个月对各个组件做实验区检测,发现了一个bug并解决了。即使当时下降了1%,但是对于Facebook来说是一个很大的损失。
Q15: 作为react用户,我们去看源码,是不是一个好的做法
我并不认为很有必要,因为很难去理解我们的源码,如果你直接去读,你可能会很困惑,因为你不了解底层的框架,有人跟你解释一下可能更好一些。我经常做的一件事,就是用一个debugger去看这些代码不同的去向,比如在chrome performance里看到函数代码的栈,你可以看到每一个函数发生的不同的事情,比如你在升级的时候就可以看到一些新的事件和功能,所以可以从性能这个方面看到这些基本的功能的目的是什么
Q16: 你是如何保持对react的热情的
我本身就很喜欢,react理念跟我对ui代码的想法很一致,我在facebook之前,在初创公司,当时直接用了react,当时不流行,但给我们工作带来了很大的便利,我们还可以清楚地看到各个功能的状态,我们经常问自己想在屏幕上看到的功能是什么,react就能解决当下这个问题
Q17: 如何像你一样优秀,前端好的学习资源分享
我并不确定我有多么优秀,如果你认为优秀可以做一个非常好看的app,那我并不是,所以说我并不是很确定大家想听到什么样的建议。
建议的话,我觉得你可以不用vue或react这样的框架去写一些ui框架,或者做一些小游戏,比如贪吃蛇,这样去促使你去做,即使它有一些复杂度,但能从中吸取一些经验。
Q18: 休闲时间会做什么呢?
偶尔玩玩堡垒之夜,但是也很久没玩游戏了,平时就听听歌、散散步
Q19: 对于中国开发者的建议
我觉得我不太确定一些事,我不知道react在中国多少人在用,在这个社区里,大家可以有不同的选择,非常感谢他们在翻译上做出的工作(此处@印记中文),我不太确定react在未来能否风靡中国,希望大家去多推荐一下react,让更多人了解到,我们将来做出更多的改变。
Q20: 未来是否愿意会在中国的react社区更多得活跃一下
必须滴!
最后辛苦Dan啦,全程一个半小时一直在解答大家的问题,一口水都没喝。而且他回答问题都回答得非常详细,都尽可能地多说一些,所以远不止我记录的那么点文字,真的是很有爱了~ 期待下一次Dan与国内程序员的互动!!!也感谢 Web infra 团队提供的这次机

阅读全文

与怎么改变appjs的状态码相关的资料

热点内容
如何用本机登陆远程服务器地址 浏览:680
黄小鸭解压文具盒 浏览:670
女程序员的转行方法 浏览:881
东风启辰车联网安装文件夹 浏览:524
华为怎么设置app时间锁 浏览:660
后宫app视频怎么下载 浏览:525
如何把图片转换从PDF格式 浏览:259
重写和重载的区别java 浏览:233
expressvpnandroid 浏览:84
储存卡被加密怎么解除 浏览:169
地球怎么压缩直径 浏览:780
金铲铲之战服务器爆满怎么进 浏览:160
同仁堂pdf 浏览:935
如何编译原理课程教材 浏览:730
单片机控制显示器 浏览:776
顶好花app下载怎么找不到 浏览:989
手机命令大全 浏览:808
怎么下邮政银行app 浏览:250
不背单词app单词怎么学习 浏览:481
程序员日常操作搞笑 浏览:382