小编And*_*e M的帖子

上下文类型'AnyObject'不能与字典文字一起使用?

我正在尝试将Objective-C示例转换为Swift 2,但我遇到了一个小问题.最初的Objective-C片段:

NSMutableArray *inputsOutputs = [NSMutableArray array];
...
[inputsOutputs addObject:@{@"input" : input, @"output" : trackOutput}];
Run Code Online (Sandbox Code Playgroud)

我认为Swift代码应该是:

var inputsOutputs = [Any?]()
...
inputsOutputs.append([ "input": input, "output": trackOutput ])
Run Code Online (Sandbox Code Playgroud)

产生的错误是:

Contextual type 'AnyObject' cannot be used with dictionary literal?
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如何将Objective-C转换为Swift?

原始目标-C:https://developer.apple.com/library/mac/samplecode/avsubtitleswriterOSX/Listings/avsubtitleswriter_main_m.html

swift swift2

32
推荐指数
1
解决办法
4万
查看次数

ES6类,父级在不同的文件中,还有node.js?

在node.js中使用在一个文件中定义的类并将其扩展为另一个文件的正确方法是什么?

目前我有:

'use strict'

class BasePageHandler {

    constructor(app, settings, context) {

    }
}

return module.exports;
Run Code Online (Sandbox Code Playgroud)

在'child'类文件中,我有:

'use strict'

var BasePageHandler = require ('./../BasePageHandler.js');

class FrontpagePageHandler extends BasePageHandler {
    constructor(app, settings, context) {
         super(app, settings, context);
         this.settings = settings;
         this.context = context;
    }
}
Run Code Online (Sandbox Code Playgroud)

此操作失败,并显示以下错误:

TypeError: Class extends value #<Object> is not a function or null
Run Code Online (Sandbox Code Playgroud)

注意,如果我在同一个文件中有BasePageHandler那么它可以正常工作,所以它真的是当这个类在另一个文件中时我遇到了问题.

目前使用节点4.4.0.

javascript node.js

21
推荐指数
2
解决办法
2万
查看次数

使用multer上传多个文件,但来自不同的字段?

如何从多个文件类型字段中删除multer接受文件?

我有以下代码使用node.js中的multer上传单个文件:

var storage =   multer.diskStorage({
  destination: function (req, file, callback) {
    callback(null, './public/uploads');
  },
  filename: function (req, file, callback) {
    callback(null, file.fieldname + '-' + Date.now());
  }
});

var upload = multer({ storage : storage });

app.post('/rest/upload', upload.array('video', 1), function(req, res, next){
    ...
}
Run Code Online (Sandbox Code Playgroud)

从下面的表格中,只有视频字段有一个值(如果我同时指定我得到'意外字段'错误):

<form action="/rest/upload" method="post" enctype="multipart/form-data">
   <label>Video file: </label> <input type="file" name="video"/> 
   <label>Subtitles file: </label> <input type="file" name="subtitles"/> 
   <input type="submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)

从文档中不清楚如何处理这个问题?任何建议,将不胜感激.顺便说一下,我尝试了以下参数变化,但没有成功:

app.post('/rest/upload', [upload.array('video', 1), upload.array('subtitles', 1)] ...
app.post('/rest/upload', upload.array('video', 1), upload.array('subtitles', 1), ...
app.post('/rest/upload', upload.array(['video', …
Run Code Online (Sandbox Code Playgroud)

node.js multer

10
推荐指数
4
解决办法
2万
查看次数

展开UITableView以在Stack View中显示所有单元格?

我无法让我的UITableView在我的堆栈视图中显示为全高.

我的视图树看起来如下:

- View
  - Scroll View
    - Stack View
      - Table View
      - Image View
      - Map View
Run Code Online (Sandbox Code Playgroud)

表视图使用数据动态填充,工作正常.问题是一次只能看到一行,我必须滚动列表.我希望看到的是桌面视图需要尽可能多的垂直空间来显示所有单元格.

我确实尝试调整表高度,如下所示,但最终只有不再滚动的表,但即使它确实有效,我宁愿有更动态的东西:

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)        
    self.detailsTableView.frame.size.height = 200
}
Run Code Online (Sandbox Code Playgroud)

我怀疑它可能是"堆栈视图"的一个方面需要调整,但我现在还不确定.有谁能建议一个合适的方式?

uitableview ios swift uistackview

9
推荐指数
2
解决办法
1万
查看次数

CircleCI 2.0,apt-get失败,"权限被拒绝"

我正在设置CircleCI 2.0配置,我需要包含ubuntu包'pdf2htmlex',但我收到以下错误:

apt-get update && apt-get install -y pdf2htmlex
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
Exited with code 100
Run Code Online (Sandbox Code Playgroud)

以下是相关部分.circle/config.yml:

version: 2
jobs:
  build:
    docker:
      # specify the version you desire here
      - image: circleci/node:7.10
      - image: circleci/postgres:9.6.2

      # Specify service dependencies here …
Run Code Online (Sandbox Code Playgroud)

ubuntu continuous-integration yaml circleci

9
推荐指数
1
解决办法
3292
查看次数

在MacOS X上创建用于运行守护程序的用户?

从命令行在MacOS X上创建用户的正确方法是什么,该命令行仅用于运行服务器应用程序?例如,Apache httpd已经有'_www'用户,但对于新应用程序,我希望它使用自己的帐户.

macos daemon user-accounts server

8
推荐指数
1
解决办法
3103
查看次数

续集:属性“播放列表”和关联“播放列表”之间的命名冲突?

我正在使用node.js,Sequelize和MariaDB,并且遇到以下错误,我不确定该如何解决?

错误:在模型playlist_entry上的属性“播放列表”和关联“播放列表”之间命名冲突。要解决此问题,请更改foreignKey或更改为关联定义中的值

我的Javascript:

Entities = function (settings, context) {

    sequelize = context.sequelize;

    var entities = {

        Playlist: this.sequelize.define('playlist', {
            name: Sequelize.STRING,
            description: Sequelize.STRING
        }),     

        PlaylistEntry: this.sequelize.define('playlist_entry', {
            playlist: Sequelize.INTEGER
            //track: Sequelize.INTEGER
        })

    };  

     entities.PlaylistEntry.belongsTo(
         entities.Playlist,
         { foreignKey: { name: 'fk_playlist' }});

    return entities;                    
}
Run Code Online (Sandbox Code Playgroud)

我的桌子:

CREATE TABLE `playlist` (
  `id` int(11) unsigned NOT NULL,
  `name` varchar(255) NOT NULL,
  `description` varchar(255) DEFAULT NULL,
  `createdAt` timestamp NULL DEFAULT NULL,
  `updatedAt` timestamp NULL DEFAULT NULL,
  `external_id` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE …
Run Code Online (Sandbox Code Playgroud)

javascript mariadb node.js sequelize.js

8
推荐指数
1
解决办法
2828
查看次数

使用 Mongoose 和 Typescript,接口的 ref 字段应该使用什么类型?

我正在使用 mongoose 和 Typescript,我想知道在创建接口时我应该使用什么类型作为参考字段?考虑以下两个相关接口:

interface ICat {
  name: string,
  colour: string,
}

interface ICatDB extends ICat, Document {};

Run Code Online (Sandbox Code Playgroud)
interface IMouse {
  name: string,
  colour: string,
  chasedBy: /* ... */
}

interface IMouseDB extends IMouse, Document {};
Run Code Online (Sandbox Code Playgroud)

以及使用它们的模式和模型:

let cat = new Schema({
  name: String,
  colour: String,
});

mongoose.model<ICatDB>('Cat', cat);
Run Code Online (Sandbox Code Playgroud)
let mouse = new Schema({
  name: String,
  colour: String,
  chasedBy: { type: Schema.Types.ObjectId, ref: 'Cat' }
});

mongoose.model<IMouseDB>('Mouse', mouse);

Run Code Online (Sandbox Code Playgroud)

对于该chasedBy字段,我们需要考虑它可以采用三种形式的值:

  • String或者ObjectId,当传递给create()方法时
  • ObjectId从猫鼬返回时
  • 从 …

javascript mongoose

8
推荐指数
2
解决办法
5528
查看次数

开发没有互联网连接的iOS应用程序?

我正在开发一个iOS应用程序,我刚刚发现自己处于一种情况,我的互联网连接被切断了,现在又回来了,它很不稳定.当部署XCode抱怨"进程启动失败:安全"时,这意味着我无法继续开发和测试.该应用程序已经为我的用户签署了XCode,并且我已经能够在有良好的互联网连接的同时部署相同的应用程序.

有没有办法在没有有效的互联网连接的情况下开发和部署应用程序到我的手机?我希望有,否则它会痉挛我的"漫游时发展"风格.

deployment xcode internet-connection ios

6
推荐指数
0
解决办法
1443
查看次数

尝试关联条目时,序列化多对多失败并显示“不关联到”?

我的 Sequelize 多对多配置有问题,它抱怨site_article_keyword is not associated to article_keyword. 下面的代码代表一个最小的测试用例,试图理解我做错了什么(我希望提供更小的东西,但这就是我所拥有的)。我正在使用 bluebird 作为 Promise API。

const Sequelize = require('sequelize');

var sequelize = new Sequelize(undefined, undefined, undefined, {
    dialect: 'sqlite',
    storage: './mydatabase',
});

const SiteArticle = sequelize.define('site_article', {
    id: {
        type: Sequelize.INTEGER,
        primaryKey: true,
        autoIncrement: true
    },
    ownerId: {
        type: Sequelize.INTEGER,
        field: 'owner_id'
    },
    title: Sequelize.STRING
        // other fields omitted
}, {
    timestamps: true
});

const ArticleKeyword = sequelize.define('article_keyword', {
    id: {
        type: Sequelize.INTEGER,
        primaryKey: true,
        autoIncrement: true
    },
    name: Sequelize.STRING, …
Run Code Online (Sandbox Code Playgroud)

node.js sequelize.js

6
推荐指数
1
解决办法
2367
查看次数