vulcanjs 功能是以包进行管理,包里面包含了运行依赖的组件以及对于路由的注册

参考项目

  • 项目结构
├── README.md
├── license.md
├── package-lock.json
├── package.json
├── packages
│ ├── _boilerplate-generator
│ │ ├── README.md
│ │ ├── generator.js
│ │ ├── package.js
│ │ ├── template-web.browser.js
│ │ ├── template-web.cordova.js
│ │ └── template.js
│ ├── _buffer
│ │ ├── buffer.js
│ │ └── package.js
│ └── dalong-demo
│ ├── lib
│ │ ├── client
│ │ │ └── main.js
│ │ ├── modules
│ │ │ ├── components
│ │ │ │ └── user.jsx
│ │ │ ├── index.js
│ │ │ └── routes.js
│ │ └── server
│ │ └── main.js
│ └── package.js
├── sample_settings.json
├── settings.json
└── yarn.lock
  • 代码说明

    代码从vulcanjs starter 获取,删除了默认的package
    对于我们主要编写包的代码,就是在packages 目录下创建功能,然后就是在.meteor/packages 进行包的注册

packages/dalong-demo/package.js
Package.describe({
name: 'dalong-demo',
});
Package.onUse(function (api) {
api.use([
'promise',
// vulcan core
'vulcan:core@1.12.3',
]);
api.mainModule('lib/server/main.js', 'server');
api.mainModule('lib/client/main.js', 'client');
});
packages/dalong-demo/lib/client/main.js
packages/dalong-demo/lib/server/main.js
import '../modules/index.js'; packages/dalong-demo/lib/modules/index.js
import './routes.js';
packages/dalong-demo/lib/modules/routes.js
import { addRoute, Components } from 'meteor/vulcan:core';
import './components/user.jsx';
addRoute({ name: 'user', path: '/', componentName: 'dalonginfo' });
packages/dalong-demo/lib/modules/components/user.jsx
import {registerComponent } from 'meteor/vulcan:core';
import React from 'react';
const Header = props => {
return (
<div>
<p>dalong demo</p>
</div>
)
}
registerComponent('dalonginfo', Header);

注册包

.meteor/packages 文件

# see http://docs.vulcanjs.org/packages

vulcan:core@1.11.2
vulcan:i18n@1.12.3
############ Your Packages ############ dalong-demo

启动

yarn && yarn start

效果


说明

打开调试控制台,可能会有一些错误,当前可以不用管

参考资料

http://docs.vulcanjs.org/routing.html
http://docs.vulcanjs.org/
https://github.com/rongfengliang/vulcanjs-package-demo

 
 
 
 

vulcanjs 简单package 编写的更多相关文章

  1. Android简单的编写一个txt阅读器(没有处理字符编码),适用于新手学习

    本程序只是使用了一些基本的知识点编写了一个比较简单粗陋的txt文本阅读器,效率不高,只适合新手练习.所以大神勿喷. 其实想到编写这种程序源自本人之前喜欢看小说,而很多小说更新太慢,所以本人就只能找一个 ...

  2. rpm 简单 package 创建demo

    安装的工具 yum install -y rpmdevtools 准备环境 主要是初始化,会自动创建rpm 包构建需要的目录 rpmdev-setuptree 编写简单的spec cd ~/rpmbu ...

  3. SpringMVC(一) 简单代码编写,注解,重定向与转发

    SpringMVC是什么 SpringMVC是目前最好的实现MVC设计模式的框架,是Spring框架的一个分支产品,以SpringIOC容器为基础,并利用容器的特性来简化它的配置.SpringMVC相 ...

  4. 简单的编写java的helloWord

    那么在上一章章节 http://www.cnblogs.com/langjunnan/p/6814641.html 我们简单的俩了解了一下什么是java和配置编写java的环境,本章呢我们学习如何编写 ...

  5. python简单爬虫编写

    1.主要学习这程序的编写思路 a.读取解释网站 b.找到相关页 c.找到图片链接的元素 d.保存图片到文件夹 ..... 将每一个步骤都分解出来,然后用函数去实现,代码易读性高. ##代码尽快运行时会 ...

  6. 简单shellcode编写

    0x00 介绍 Shellcode 是指经过精心设计的一串指令,一旦注入正在运行的应用程序中即可运行,常用于栈和基于堆的溢出.术语Shellcode意思指的便是用于启动一个命令Shell的已编写好的可 ...

  7. lua 5.3最简单plugin编写

    #include <windows.h> #include "lauxlib.h" /* Pop-up a Windows message box with your ...

  8. (1)打造简单OS-汇编写入引导区,虚拟机启动步骤

    首先需要您在网上下载NASM编译器,可以将汇编编译为二进制文件 1.写一段汇编代码在屏幕上打印一段字符,可以运行的!并进行nasm为二进制文件,如下"test.asm" 该段汇编主 ...

  9. js最简单的编写地点

    1. 在哪里? 在浏览器的控制台. 2. 有什么作用? 方便快捷的测试纯js代码语句. 3. 如何使用? Google浏览器为例:  按 F12键  打开 开发者工具  (或者 浏览器工具栏 => ...

随机推荐

  1. IntelliJ IDEA 阿里巴巴编码插件

    良好的编码习惯的从这个IDEA插件开始  这是根据阿里巴JAVA开发规范.PDF 开发的代码提示插件 具体提示如下   这里可以扫描你项目下不规范的代码 如果侧插件CPU太卡的话也可以点击右边的 ...

  2. CAS操作原理分析

      一.CAS简单介绍     CAS:Compare and Swap, 翻译成比较并交换.     java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁 ...

  3. LeetCode--121--卖卖股票的最佳时机

    问题描述: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润. 注意你不能在买入股票前卖出 ...

  4. LeetCode--112--路径总和

    问题描述: 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. 示例:  给定如下二叉树,以及目标和 s ...

  5. vs2015下通过opencv使用hdf5

    因为使用Kinect SDK编程,又需求高速文件I/O,所以通过opencv接口使用hdf5. (opencv 3.1以上版本,在其Extra Modules中支持hdf5) 一. 环境 OS: Wi ...

  6. throw new OAException执行了,却没有正常抛出异常!

    try { if ("E".equals(returnStatus)) { throw new OAException(returnMessage, OAException.ERR ...

  7. sql server中如何将两个字段数据合并成一个字段显示(字段与字段添加特殊符号)

    之前,我在做统计数据时,需要一个字段显示某月的订单数量和订单金额,要求组合成一个字段,用括号组合. 统计出来的结果大概是这样的,首先我们来创建一些模拟数据 ---创建订单表--- create tab ...

  8. python Django 之 Model ORM inspectdb(数据库表反向生成)

    在前一篇我们说了,mybatis-generator反向生成代码. 这里我们开始说如何在django中反向生成mysql model代码. 我们在展示django ORM反向生成之前,我们先说一下怎么 ...

  9. 数据集 过滤时 RecordCount 属性

    如果是在 OnFilterRecord里写代码,过滤后RecordCount 是不变的. 如果是用 Filter属性过滤,过滤后RecordCount 是变的=过滤后的记录数. 难怪 有的说 变的,有 ...

  10. Python 多进程、多线程效率比较

    Python 界有条不成文的准则: 计算密集型任务适合多进程,IO 密集型任务适合多线程.本篇来作个比较. 通常来说多线程相对于多进程有优势,因为创建一个进程开销比较大,然而因为在 python 中有 ...