我试着寻找答案,但没有找到答案.
我不小心在XCode4中删除了我的故事板.无论如何我可以找回它吗?我看着垃圾桶,但那里什么都没有.
谢谢你的帮助!
更新:即使我删除了故事板,我也注意到编译器仍然编译并运行程序,并且具有正确大小,文本标签和定位的所有相同的UIButtons和UILabels.好像它从未被删除过!我猜这些信息还在某处!有没有人知道是否有一个副本保存在xcode某处我可以用来重新创建故事板文件?
我正在寻找源代码React 16.4.2
并注意到一些对我来说有点不熟悉的东西,并且想知道它是如何工作的.这是代码:
var validateFormat = function validateFormat(format) {};
{
validateFormat = function validateFormat(format) {
if (format === undefined) {
throw new Error('invariant requires an error message argument');
}
};
}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,有一个变量被声明被调用,validaeFormat
并且它被赋予一个函数作为它的'值.这对我来说很有意义.但是,在此行之后,您可以看到该变量正被重新分配给其闭包中具有相同名称但逻辑不同的函数.
令我困惑的部分是重新分配的额外未命名的闭包.它似乎是React源代码中的常见范例.
额外牙套的目的是什么?这在运行时如何表现?
我正在阅读iOS开发人员指南以熟悉Objective-C语言,目前我对Container Literals和Subscript Notation的主题有点混淆,因为它与创建对象有关NSDictionary
.
我知道有几种方法可以创建NSDictionary
对象,包括键值编码(dictionaryWithObjects:forKeys:
和dictionaryWithObjectsAndKeys:
,或它们相应的初始化器).来源链接.
根据我的理解,有两种主要方法可以做到这一点,然后有另一种方法是使用容器文字,在这里演示:
NSDictionary *myDictionary = @{
@"name" : NSUserName(),
@"date" : [NSDate date],
@"processInfo" : [NSProcessInfo processInfo]
};
Run Code Online (Sandbox Code Playgroud)
哪种方式最好?使用Container Literal技术比前两个技术有什么好处,还是对程序员来说只是一件方便的事情?
我的印象是它也是另一种更简单的方法来编码像数组这样的东西.这是真的还是我在这里缺少什么?这些技术只是个人喜好吗?
我有以下 Dockerfile,并且想知道我需要做什么才能通过访问从我的主机访问它myapp.dev
:
FROM ubuntu:16.04
USER root
RUN apt-get update && apt-get -y upgrade && apt-get install apt-utils -y && DEBIAN_FRONTEND=noninteractive apt-get -y install \
apache2 php7.0 php7.0-mysql libapache2-mod-php7.0 curl lynx-cur git
EXPOSE 80
ADD www /var/www/site
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf
CMD /usr/sbin/apache2ctl -D FOREGROUND
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)
我正在使用以下命令来运行容器:
docker run -d -p 8080:80
我有这个代码:
-(IBAction)startTime:(id)sender {
NSDate *myDateTime1 = [[NSDate alloc] init];
NSLog(@"%@", myDateTime1);
[myDateTime1 release];
}
-(IBAction)stopTime:(id)sender {
NSDate *myDateTime2 = [[NSDate alloc] init];
NSLog(@"%@", myDateTime2);
[myDateTime2 release];
}
Run Code Online (Sandbox Code Playgroud)
我想找到两次之间的区别.我怎么能做到这一点?
我有一系列位于元素内部的输入框,我想让输入框的父元素根据鼠标的聚焦位置单独设置一个边框。代码如下所示:
HTML(只是输入元素之一,因为它们都以相同的方式编码):
<div class="parent-element">
<input type="text"
[class.bordered]="myBooleanVariable"
(focus)="addBorder()"
(blur)="removeBorder()"
/>
</div>
Run Code Online (Sandbox Code Playgroud)
打字稿:
addBorder() {
this.myBooleanVariable = true;
}
removeBorder(event) {
this.myBooleanVariable = false;
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是,当在bordered
上应用该类时focus
,所有.parent-element
div 都会获得边框,因为myBooleanVariable
它要么是 true,要么是 false。我希望避免静态变量一样myBooleanVariable1
,myBooleanVariable2
等
我怎样才能做到这一点?
我有一个 angular 7 应用程序 POST-ing 一个 excel 文件并期望从我的 Express 服务器返回一个 excel 文件,如下所示:
myAngular.service.ts
const url = 'myEndpoint';
const formData: FormData = new FormData();
formData.append('xlsx', postedExcelFile, 'myFilename');
const httpOptions = {
headers: new HttpHeaders({
responseType: 'blob'
})
};
return this.http.post(url, formData, httpOptions);
Run Code Online (Sandbox Code Playgroud)
这是来自发送文件的 Express 服务器的代码:
服务器.js
res.download(pathToMyFile);
Run Code Online (Sandbox Code Playgroud)
在前端,响应是 anHttpErrorResponse
和错误状态:
SyntaxError: Unexpected token P in JSON at position 0
Run Code Online (Sandbox Code Playgroud)
我可以看到错误文本的内容是 Excel 文件的内容,这意味着该文件确实被发送回浏览器。但是,出于某种原因,Angular 似乎期待 JSON 并尝试解析它。
如您所见,我已将responseType: 'blob'
标头添加到 POST 请求中,以便它可以期待文件返回,但我仍然收到此错误。有什么我忘记添加到帖子请求中的吗?
意图:
我试图弄清楚如何使用该命令docker-compose up --build
构建一台机器,其中 Apache/PHP7.1 服务充当 Web 服务器,MSSQL 服务充当 Web 服务器提供的应用程序的数据库。
在构建此开发环境时,我需要能够向 docker 容器输入命令(以便我可以查看 PHP 日志等),但由于 Web 服务器正在运行,所以我的终端被来自Web 服务器,当我按下 时ctrl+Z
,它实际上将 docker 进程置于后台。
问题: 我是否可以运行这个 docker-compose.yml 文件并将其放入来宾计算机上的 shell 中?
服务一:
webserver:
image: php:7.1-apache
stdin_open: true
tty: true
volumes:
- ./www:/var/www/html
ports:
- 5001:80
Run Code Online (Sandbox Code Playgroud)
服务二:
mssql:
image: microsoft/mssql-server-linux
stdin_open: true
tty: true
environment:
- ACCEPT_EULA=Y
volumes:
- ./www:/var/www/html
ports:
- 1433:1433
depends_on:
-webserver
Run Code Online (Sandbox Code Playgroud) 我试图让这段代码工作,但似乎无法获得任何显示变量设置的输出:
#import <Foundation/Foundation.h>
#import "thingy.h"
int main (int argc, const char * argv[])
{
@autoreleasepool {
thingy *mythingy;
[mythingy setMass:75.00];
[mythingy setTime:5.00];
NSLog(@"mass of mythingy = %f kg", [mythingy mass]);
NSLog(@"time of mythingy = %f sec", [mythingy time]);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是我得到的输出:
mass of mythingy = 0.000000 kg
time of mythingy = 0.000000 sec
Run Code Online (Sandbox Code Playgroud)
我也尝试不使用@autoreleasepool(ARC),代码如下所示,但输出与以前相同:
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
thingy *mythingy;
[mythingy setMass:75.00];
[mythingy setTime:5.00];
NSLog(@"mass of mythingy = %f kg", [mythingy mass]);
NSLog(@"time of mythingy …
Run Code Online (Sandbox Code Playgroud) 如果我正在搞乱XCode并尝试学习Objective-C,如果我经常忘记释放对象,它是否对我的系统造成任何威胁?不释放物体的真正后果是什么?如果我重新启动计算机,这些内存泄漏会持续存在吗?
我主要搞乱NSStrings和NSTimers以及类似的东西,没什么大不了的.我只是担心它弄乱了我的电脑.
有没有办法检查是否有未发布的对象?如果他们想检查一堆代码以查看是否存在任何这些内存泄漏,该怎么办?
我无法理解为什么以下代码在控制台/终端中显示"第一个键=(null)":
这是界面:
#import <UIKit/UIKit.h>
@interface TestingViewController : UIViewController
@property (nonatomic, strong) NSMutableArray *namesArray;
@property (nonatomic, strong) NSDictionary *myDictionary;
@end
Run Code Online (Sandbox Code Playgroud)
这是实施:
#import "DictionaryTestViewController.h"
@implementation DictionaryTestViewController
@synthesize namesArray;
@synthesize myDictionary;
- (void)viewDidLoad
{
[super viewDidLoad];
[self.myDictionary initWithObjectsAndKeys:@"value1", @"key1", @"value2", @"key2", nil];
NSLog(@"The First Key = %@", [self.myDictionary objectForKey:@"key1"]);
}
@end
Run Code Online (Sandbox Code Playgroud)
提前致谢!
objective-c ×5
angular ×2
docker ×2
ios ×2
xcode ×2
blob ×1
express ×1
file-upload ×1
httprequest ×1
iphone ×1
javascript ×1
reactjs ×1
sql-server ×1
xcode4 ×1