电脑的电源线吗,能插在电饭锅线和电脑主机线通用吗上用吗

如何注册.net&的类库dll&为com组件
1. 在.net Visual Studio 中新建一个Class项目。
2. 在项目中新添加一个类,代码如下:
namespace ClassLibrary1
//定义接口,这点很重要 (此接口中的方法与COM组件中的方法一致)
public interface iClass1
public class Class1 : iClass1
private string t = "";
//实现接口中的方法
public string
return "ok";
3.在.NET命令行窗口中,创建密钥对。
可以用.net 自带的工具:sn.exe 来创建密钥对。
实际操作如下:
1.打开SDK Command Prompt或者VS2005中的Visual Studio 2005 Command Prompt.而不是windows的cmd
2.输入sn -k SampleKey.snk,得到的文件在命令提示符的当前文件夹下
3.输入sn -p SampleKey.snk SampleKeyPublic.snk
4.输入sn -t SampleKeyPublic.snk 得到public key token
4. 创建强命名程序集(Strong Name Assembly)
在AssemblyInfo.cs文件中,添加[assembly: AssemblyKeyFile(@"c:\test.keys")]属性
[assembly: ComVisible(true)]
5. 编译整个项目,生成ClassLibrary1.dll (此DLL可在 \bin\Debug 路径下找到。)
6. 在.NET命令行窗口中,生成类型库
tlbexp ClassLibrary1.dll /out:ClassLibrary1.tlb
7. 在.NET命令行窗口中,注册装配件
regasm /tlb:ClassLibrary1.tlb ClassLibrary1.dll
8. 在.NET命令行窗口中,将.NET装配件安装到全局装配件缓存(GAC)中
gacutil /i ClassLibrary1.dll
9. 在asp中测试
SET s = CreateObject("ClassLibrary1.Class1")
Response.Write(s.test())
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。强大Vue.js组件解析 如何注册组件 - 维维软件园
强大Vue.js组件解析 如何注册组件
来源:维维整理作者:维维时间: 20:58:33(0)
强大Vue.js组件解析,组件是Vue.js最强大的功能之一,下面给大家详细介绍下,有兴趣的朋友来详细了解下吧。
什么是组件:
组件是Vue.js最强大的功能之一。组件能够扩展HTML元素,封装可重用的代码。在较高层面上,组件是自定义的元素,Vue.js的编译器为它添加特殊功能。在有些情况下,组件也可以是原生HTML元素的形式,以is特性扩展。
如何注册组件?
需要使用Vue.extend方法创建一个组件,之后使用ponent方法注册组件。Vue.extend方法格式如下:
var MyComponent = Vue.extend({
// 选项...后面再介绍
要是想要其他地方使用这个创建的组件,还得给组件命个名:
<ponent('my-component', MyComponent)
命名以后就能在HTML标签中使用这个组件名称,像使用DOM元素一样。下面来看看一个完整的组件注册和使用例子。
html代码:
&div id=&example&&
&my-component&&/my-component&
var MyComponent = Vue.extend({
template: '&div&A custom component!&/div&'
ponent('my-component', MyComponent)
// 创建根实例
el: '#example'
输出结果:
&div id=&example&&
&div&A custom component!&/div&
组件本身也可以包含组件,下面的parent组件就包含了一个命名为child-component组件,但这个组件只能被parent组件使用:
var child = Vue.extend({
template: '&div&A custom component!&/div&'
var parent = Vue.extend({
template: '&div&Parent Component: &child-component&&/child-component&&/div&',
components: {
'child-component': child
ponent(&parent-component&, parent);
上面的定义过程十分的繁琐,也能够不用每一次都调用ponent和Vue.extend方法:
// 在一个步骤中扩展与注册
ponent('my-component', {
template: '&div&A custom component!&/div&'
// 局部注册也可以这么做
var Parent = Vue.extend({
components: {
'my-component': {
template: '&div&A custom component!&/div&'
多个组件能够使用同一个挂载点,然后动态的在他们之间切换。使用保留的&component&元素,动态地绑定到它的is特性。下面的列子在同一个vue实例下挂了home、posts、archive三个组件,通过特性currentView动态切换组件显示。
html代码:
&div id=&dynamic&&
&button id=&home&&Home&/button&
&button id=&posts&&Posts&/button&
&button id=&archive&&Archive&/button&
&component :is=&currentView&&&/component&
var vue = new Vue({
el:&#dynamic&,
currentView: &home&
components: {
template: &Home&
template: &Posts&
archive: {
template: &Archive&
document.getElementById(&home&).onclick = function(){
vue.currentView = &home&;
document.getElementById(&posts&).onclick = function(){
vue.currentView = &posts&;
document.getElementById(&archive&).onclick = function(){
vue.currentView = &archive&;
组件和v-for
& my-component v-for=&item in items&&&/my-component&
不能传递数据给组件,因为组件的作用域是独立的。为了传递数据给组件,应当使用props:
&my-component
v-for=&item in items&
:item=&item&
:index=&$index&&
& /my-component&
不自动把 item 注入组件的原因是这会导致组件跟当前 v-for 紧密耦合。显式声明数据来自哪里可以让组件复用在其它地方。
深入响应式原理
在组件绑定数据时,怎么绑定才可以有效,并且能够动态修改、添加属性?看看下面的原理介绍。
怎么追踪变化:把一个不同对象传给vue实例作为data的选项,vue.js将遍历它的属性,用Object.defineProperty将它转换为getter/setter。这是ES5特性,所有vue.js不支持IE8或更低版本。
模板中每个指令/数据绑定都有一个对应的watcher对象,在计算过程中它将属性记录为依赖。然后当依赖的setter被调用时 ,会触发watcher重新计算。流程如下所示:
变化检测问题:vue.js不能检测到对象属性的添加或删除,属性必需要在data上才可以让vue.js转换它为getter/setter模式,才能有响应。例如:
var data = { a: 1 };
var vm = new Vue({
data: data
// `vm.a` 和 `data.a` 现在是响应的
// `vm.b` 不是响应的
data.b = 2
// `data.b` 不是响应的
不过,也有办法在实例创建后添加属性并且让它是相应的。可以使用set(key,value)实例方法:
vm. set('b', 2)
// `vm.b` 和 `data.b` 现在是响应的
对于普通对象可以使用全局方法:Vue.set(object, key, value):
Vue.set(data, 'c', 3)
// `vm.c` 和 `data.c` 现在是响应的
初始化数据:虽然Vue.js提供动态的添加相应属性,还是推荐在data对象上声明所有的相应属性。
不这么做:
var vm = new Vue({
template: '&div&{{msg}}&/div&'
// 然后添加 `msg`
vm.$set('msg', 'Hello!')
应该这么做:
var vm = new Vue({
// 以一个空值声明 `msg`
template: '&div&{{msg}}&/div&'
// 然后设置 `msg`
vm.msg = 'Hello!'
组件完整案例
下面介绍的例子实现了模态窗口功能,代码也比较简单。
html代码:
&!-- 实现script定义一个模板 --&
&script type=&x/template& id=&modal-template&&
&!--模板是否显示通过v-show=&show&来设置, transition设置动画效果--&
&div class=&modal-mask& v-show=&show& transition=&modal&&
&div class=&modal-wrapper&&
&div class=&modal-container&&
&div class=&modal-header&&
&!--slot 相当于header占位符--&
&slot name=&header&&
default header
&div class=&modal-body&&
&!--slot 相当于body占位符--&
&slot name=&body&&
default body
&div class=&modal-footer&&
&!--slot 相当于footer占位符--&
&slot name=&footer&&
default footer
&button class=&modal-default-button& @click=&show = false&&OK&/button&
&div id=&app&&
&!--点击按钮时设置vue实例特性showModal的值为true--&
&button id=&show-modal& @click=&showModal = true&&show modal&/button&
&!--modal是自定义的一个插件,插件的特性show绑定vue实例的showModal特性--&
&modal :show.sync=&showModal&&
&!--替换modal插件中slot那么为header的内容--&
&h3 slot=&header&&Custom Header&/h3&
//定义一个插件,名称为modal
ponent(&modal&, {
//插件的模板绑定id为modal-template的DOM元素内容
template: &#modal-template&,
//特性,类型为布尔
type: Boolean,
required: true,
twoWay: true
//实例化vue,作用域在id为app元素下,
el: &#app&,
//特性,默认值为false
showModal: false
.modal-mask {
z-index: 9998;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .5);
transition: opacity .3
.modal-wrapper {
display: table-
vertical-align:
.modal-container {
width: 300
padding: 20px 30
background-color: #
border-radius: 2
box-shadow: 0 2px 8px rgba(0, 0, 0, .33);
transition: all .3
font-family: Helvetica, Arial, sans-
.modal-header h3 {
margin-top: 0;
color: #42b983;
.modal-body {
margin: 20px 0;
.modal-default-button {
* the following styles are auto-applied to elements with
* v-transition=&modal& when their visiblity is toggled
* by Vue.js.
* You can easily play with the modal transition by editing
* these styles.
.modal-enter, .modal-leave {
opacity: 0;
.modal-enter .modal-container,
.modal-leave .modal-container {
-webkit-transform: scale(1.1);
transform: scale(1.1);
因为自己在项目中还没有怎么深入使用组件的功能,因此自己对组件的理解也不深入,介绍的有些肤浅,谢谢大家的阅读。
大家还看了:
[访问统计:]
上一篇:下一篇:
该分类还没有添加任何内容!问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
vue框架有Vue.extend()方法,用来创建一个组件构造器,组件构造器创建之后需要注册(全局注册/局部注册)后才可以使用例如:
//我要局部注册组件,在官网上找到如下的例子
var Child = Vue.extend({ /* ... */ })
var Parent = Vue.extend({
template: '...',
components: {
// &my-component& 只能用在父组件模板内
'my-component': Child
//但是我加上自己的理解写出来就是出问题了。
&div id="example"&
&my-component& &/my-component&
var child=Vue.extend({
template:"&div&子集的模版&/div&"
var parent=Vue.extend({
template:"&div&父集的模版&/div&",
components:{
//将子集的组件注册到父集
'my-component': Child
//注册到父集之后就直接使用my-component这个模版吗?
//这样的话我在页面会报错 如下:
//vue.js:1023 [Vue warn]: Unknown custom element: &my-component& - did you register the component correctly? For recursive components, make sure to provide the "name" option.
按照我的理解,组件使用extend创建之后,都是需要注册的,那么我将一个子组件注册到父组件,那么子组件无法在外部调用,只有通过调用父组件才能使用子组件。那么是不是父组件也是需要在全局注册之后才能使用?望解答,顺便说下 上面的那段代码怎么写才是正确的?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
首先,上面的代码可以这样子跑起来。代码如下。或者去 看效果
&div id="example"&
&parent& &/parent&
var Child = Vue.extend({
template:"&div&子集的模版&/div&"
var Parent = Vue.extend({
template:"&div&父集的模版&/div&&my-component&&/my-component&",
components:{
//将子集的组件注册到父集
'my-component': Child
//注册到父集之后就直接使用my-component这个模版吗?
el: '#example',
components: {
'parent': Parent
组件注册后,是需要使用的,Vue.js通过new Vue来创建实例。所以父组件的使用需要在new Vue中进行注册,然后在HTML中进行使用。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
我也遇到这个报错,注意html里new Vue创建的实例不能包含在其他实例中,这样就好了
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
你的&my-component&&/my-component&注册在parent中
parent未关联example
同步到新浪微博
分享到微博?
Hi,欢迎来到 SegmentFault 技术社区!⊙▽⊙ 在这里,你可以提出编程相关的疑惑,关注感兴趣的问题,对认可的回答投赞同票;大家会帮你解决编程的问题,和你探讨技术更新,为你的回答投上赞同票。
明天提醒我
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
扫扫下载 Appvue开发(15)
在vue项目中,可以自定义组件像vue-resource一样使用Vue.use()方法来使用,具体实现方法:
1、首先建一个自定义组件的文件夹,比如叫loading,里面有一个index.js,还有一个自定义组件loading.vue,在这个loading.vue里面就是这个组件的具体的内容,比如:
loading..............
export default {
font-size:40px;
color:#f60;
text-align:center;
&1234567891011121314151617181912345678910111213141516171819
在index.js中,规定了使用这个组件的名字,以及使用方法,如:
import loadingComponent from './loading.vue'
const loading={
install:function(Vue){
ponent('Loading',loadingComponent)
export default1234567891012345678910
只要在index.js中规定了install方法,就可以像一些公共的插件一样使用Vue.use()来使用,如:
import loading from './loading'
Vue.use(loading)123123
这是在入口文件中引入的方法,可以看到就像vue-resource一样,可以在项目中的任何地方使用自定义的组件了,比如在home.vue中使用
&1234512345
这样就可以使用成功
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:7842次
排名:千里之外
原创:72篇}

我要回帖

更多关于 电饭锅线和电脑主机线通用吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信