在具有过时节点版本的机器上进行EmberJS开发

时间:2017-01-07 20:46:02

标签: node.js ember.js development-environment

我有一个项目,我想使用最新的EmberJS进行开发。目前,节点0.10.4安装在我给出的机器上,这是我需要的后端系统的硬盘要求。由于nodejs已经过时,我无法在不更新NodeJ的情况下在此机器上安装最新的Ember。我的ember应用程序必须通过socket.io与后端系统进行通信,是否可以在这台机器上创建一个虚拟开发环境,用最新的nodejs开发Ember,并且能够在开发过程中轻松配置socket.io连接?

我相信一旦将Ember编译成分发文件,我可以很容易地将这些文件迁移到我过时的nodejs的公共文件夹中,但如果我错了,请纠正我 < / p>

关于解决方案的任何想法都很容易配置而不需要新机器?

2 个答案:

答案 0 :(得分:2)

处理这种情况的最简单方法是使用节点版本管理器(NVM)。 只需按照位于here的安装说明进行操作。

然后您只需输入nvm install <desired version of node>

例如,在开发后端系统时,首先输入nvm install v0.10.4。在开发您的Ember应用程序时,请键入nvm install v6.0.0

(注意:要找出可供下载的节点版本,请运行nvm ls-remote)。

答案 1 :(得分:1)

如果您使用Linux - 您可以执行以下步骤:

  1. 创建新用户
  2. 使用here的最新node.js版本下载存档:
  3. 将存档解压缩到新用户/主目录中的任何文件夹
  4. 然后切换到创建的用户并执行import numpy as np import string import random # generate some fake data p = [( str(int(e)), ''.join( random.choice( string.ascii_uppercase + string.digits) for _ in range(10) ) ) for e in np.random.normal(10, 1, 10000)] posts = spark.createDataFrame(p, ['label', 'val']) # define the sample size percent_back = 0.05 # use this if you want an (almost) exact number of samples # sample_count = 200 # percent_back = sample_count / posts.count() frac = dict( (e.label, percent_back) for e in posts.select('label').distinct().collect() ) # use this if you want (almost) balanced sample # f = posts.groupby('label').count() # f_min_count can also be specified to be exact number # e.g. f_min_count = 5 # as long as it is less the the minimum count of posts per user # calculated from all the users # alternatively, you can take the minimum post count # f_min_count = f.select('count').agg(func.min('count').alias('minVal')).collect()[0].minVal # f = f.withColumn('frac',f_min_count/func.col('count')) # frac = dict(f.select('label', 'frac').collect()) # sample the data sampled = posts.sampleBy('label', fractions=frac) # compare the original counts with sampled original_total_count = posts.count() original_counts = posts.groupby('label').count() original_counts = original_counts \ .withColumn('count_perc', original_counts['count'] / original_total_count) sampled_total_count = sampled.count() sampled_counts = sampled.groupBy('label').count() sampled_counts = sampled_counts \ .withColumn('count_perc', sampled_counts['count'] / sampled_total_count) print(original_counts.sort('label').show(100)) print(sampled_counts.sort('label').show(100)) print(sampled_total_count) print(sampled_total_count / original_total_count)
  5. 然后你应该只为这个用户使用node.js 7。*。*,但其他用户的默认版本是0.10.4