# @finviz/spine 中文文档

规范地址：https://npmcn.com/package/%40finviz/spine/

版本：3\.0\.0
npm 元数据更新时间：2024-01-11T09:24:25.783Z
中文译文更新时间：2026-11-14T19:29:29.835Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40finviz/spine
原文对照：https://npmcn.com/package/%40finviz/spine/?lang=original
项目主页：http://spinejs.com/
源码仓库：https://github.com/finvizhq/spine

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：143 kB，15 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2021-08-27T12:36:47.081Z
- 最新版本发布：2024-01-11T09:24:25.578Z
- 近 30 天下载量：3224（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：3（近 12 个月 0 个）

## 中文简介

MVC图书馆.

## 安装

```sh
npm install @finviz/spine
```

也可以使用：`pnpm add @finviz/spine`、`yarn add @finviz/spine`、`bun add @finviz/spine`

## README

# 螺旋

[![Build Status](https://img.shields.io/circleci/project/spine/spine/dev.svg?style=flat)](https://circleci.com/gh/spine/spine) [![Gitter](https://img.shields.io/gitter/room/spine/spine.svg?style=flat)](https://gitter.im/spine/spine?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Spine是用于构建JavaScript网络应用程序的轻量级MVC库. 斯宾普给你结构,然后让你走出你的道路, 让你专注于有趣的东西: 建立真棒的网络应用程序.

斯宾克在网络应用架构和设计的方法上受到好评. 斯宾克的架构补充了脱钩组件等模式和CommonJS模块,明显地帮助了代码质量和可维护性.

图书馆是用 [咖啡脚本](http://coffeescript.org/)尽管CoffeeScript并不一定需要开发应用程序 - 您可以使用你最熟悉或更喜欢的任意语言 - 文档和一些相关工具,比如 [汉姆](https://github.com/spine/hem) 财务报告和审定财务报表 [脊椎 应用](https://github.com/spine/spine.app) 照顾那些喜欢CoffeeScript语法的人.

## 学着点

文件往往不完整或只是谎言,等待发生。 可接触源代码减少知识依赖. 这是一个比起其他MVC框架,斯宾克非常出色的领域. 斯宾克很小;核心库以不到700行CoffeeScript代码进入. 它的写法是更喜欢可读性 而不是精巧的技巧, 并且它足够小,在一个相当小的时间内,你可以理解 所有的作品是如何一起工作的。 专门知识可在几天或几周内实现,而不是数月或数年。 由于这些原因,保持轻量级和简单对于斯宾普至关重要.

文件、使用和实例见: [脊椎骨. github.io](http://spine.github.io/)

测试套件偶尔也可以提供额外的有用例子,特别是如果您正在寻找非coffeescript中的例子.

# 捐款

## 报告问题

要提交错误报告, 请访问 [GitHub 问题页面](https://github.com/spine/spine/issues)。如果您可以附加代码(测试错误的大小写和修正,测试错误大小写和针对特性的拟议执行),那就太好了,但也可以复制出错误报告.

支持或帮助使用脊椎 [斯宾克谷歌集团](https://groups.google.com/forum/#!forum/spinejs) 而不是在Github上开出一期 如果你在那些地方发表文章,你更可能让更多的人进来,其他人可以更方便地从中受益.

## 克隆大师和运行测试套件

要开始为斯宾克做贡献,首先克隆了寄存器,并确保能运行测试套件. 如果你对吉特不熟悉,就去拜访他 [Git 主页](http://git-scm.com/) 用于下载您的平台的 Git.

首先,复制寄存器:

```
$ git clone git://github.com/spine/spine.git
$ cd spine
```

接下来, 您需要节点和 npm 来拉入测试库 。 一旦你都和那些放在一起 然后从斯宾普雷波目录中运行

```
$ npm install
```

这将安装 CoffeeScript 和 [卡玛测试跑者](http://karma-runner.github.io/)。 。 。 .

此时您可以轻松地运行完整的测试套件

```
$ npm test
```

但这对于开发来说并不十分实用,因为它多次运行测试套房,再次运行了不同版本的jQuery.

更好的办法是安装Karma CLI

```
$ npm install -g karma-cli
```

这样你就可以用 `$ karma start` 以使用 jQuery 的最新稳定版本运行测试。 Karma会在背景中继续运行,每当您更改任何文件时都会重新运行测试. Karma 服务器运行时, 您可以访问浏览器调试测试 `http://localhost:9876/debug.html`。 。 。 .

如果需要,还可以再次测试一个特定的版本的jQuery: `$ JQUERY_VERSION=1.9.1 karma start`。 。 。 .

## 协助编写斯宾克文件

也许最容易开始投稿的方法就是通过文件。 如果您在文档中找到打字器、错误或遗漏, 请提交拉动请求以修正 . [斯宾克网站](http://spine.github.io/)这是主要文件,非常简单 [温特史密斯](http://wintersmith.io/) 应用程序在 [脊椎骨. github.io](https://github.com/spine/spine.github.io)基本减记的熟悉度 可能是你需要做的改变.

## 向斯宾克编码投稿

建议的缴款程序基于 [Ruby on Rails贡献指南](http://edgeguides.rubyonrails.org/contributing_to_ruby_on_rails.html#contributing-to-the-rails-code)。一般来说,请包含带有新特性或bugfixs的测试,在一个特性分支中工作,直到您准备提交或讨论您的代码,然后叉出寄存器,推出您的分叉,并发出拉出请求.

### 咖啡脚本

提交拉出代码请求时,请用 CoffeeScript 提交. 为了测试目的,需要构建已实现的js文件,但提交这些js文件是可选的.

假设您已经安装了节点(Node.js)和npm(npm),然后通过安装本地依赖性进行:

```
$ npm install
```

然后使用提供的构建脚本来编译您的 CoffeeScript 文件 :

```
$ cake build
$ cake watch
```

这些任务使用当地安装的 CoffeeScript 副本,以确保所有贡献者使用同版本的编译器.

### 图形

假设我要提交一个补丁来添加一些FeatureFix:

```
$ git checkout dev
```

特色分支应该从 `dev` **没有** `master`。如果您从主分支中分出,或者在主分支上建起,您将获得 CoffeeScript 源地图文件,这些文件很酷,但往往会破坏自动与 git 合并.

```
$ git checkout -b someFeatureFix
$ vim test/...
  # (...add tests...)
$ cake watch
  # (...this should recompile and changes you make in your CoffeeScript...)

-- figure out what spine module your changes belong in
$ vim src/spine.coffee
or
$ vim src/[otherSpineComponent].coffee
  # (...add the feature/fix...)
$ open test/index.html
  # (...make sure tests run for each component that was changed...)
  # (...test in other browsers with various jquery versions if you feel like there is risk... )
$ git commit -m "Add Some Feature Fix"
```

接下来, [将斯宾克寄存器分叉](https://github.com/spine/spine/fork),将你的分枝推向叉子:

```
$ git remote add <your user name> git@github.com:<your user name>/spine.git
$ git push <your user name> someFeatureFix
```

最后,从 GitHub 接口内向 `dev` 你们的贡献,已准备就绪,以便你们考虑、讨论和(希望)合并!

## 常见问题

### @finviz/spine 是什么？

MVC图书馆\.

### 如何安装 @finviz/spine？

在项目目录运行 npm install @finviz/spine，或使用 pnpm add / yarn add / bun add。

### @finviz/spine 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/finviz\_\_spine 是否存在。

### @finviz/spine 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @finviz/spine 可以商用吗？

@finviz/spine 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @finviz/spine 的下载量有多少？

根据 npm 官方下载统计，@finviz/spine 在 2026/10/15 – 2026/11/13 这 30 天内被下载 3,224 次，日均约 107 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @finviz/spine 还在维护吗？

最新版本 3\.0\.0 发布于 2024/01/11（2 年前）；至今共发布 3 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/08/27。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

